|
Dispatch
Dispatch[ -> , -> , ... ] erzeugt eine optimierte Dispatch-Tabellen-Darstellung einer Liste mit Regeln. Das von Dispatch produzierte Objekt kann dazu verwendet werden, um die Regeln in ausdr /. regeln anzugeben.
Der Einsatz von Dispatch wird niemals Ergebnisse, die erzielt werden, beeinflussen, kann aber die Anwendung langer Regellisten sehr stark beschleunigen.
Listen mit Regeln werden gewöhnlich sequentiell durchsucht, wenn Sie einen Ausdruck wie ausdr /. regeln evaluieren. Regeln wie zum Beispiel a[1]->a1 und a[2]->a2, die nicht gleichzeitig zutreffen können, brauchen beide nicht explizit geprüft zu werden. Dispatch erzeugt eine Dispatch-Tabelle, die mit Hilfe von Hash-Codes angibt, welche Regelsätze tatsächlich für einen bestimmten Eingabe-Ausdruck geprüft werden müssen.
Listen mit Regeln, die von Zuweisungen mit = und := produziert werden, werden, wenn es sinnvoll ist, automatisch mit einer Dispatch-Tabelle optimiert.
Siehe Das Mathematica Buch: 2.4.2.
Siehe auch: ReplaceAll, Compile.
Further Examples
|