Interaktion mit CindyLab - Cinderella Dokumentation
Description: The user's guide to the Interactive Geometry Software Cinderella

Zum Inhalt

# Interaktion mit CindyLab

#### Die Simulationsumgebung: `simulation()`

Beschreibung: Dieser Operator bietet einen Zugriff auf die Simulationsumgebung. Die Simulationsumgebung bietet mehrere Felder, mit denen man auf ihre globalen Eigenschaften zugreifen kann.

Name | Schreibbar | Typ | Zweck
--- | --- | --- | ---
`friction` | ja | real | Gesamtreibung der Simulation
`gravity` | ja | real | Gesamtgravitation der Simulation
`kinetic` | nein | real | Gesamtkinetische Energie der Simulation
`ke` | nein | real | Gesamtkinetische Energie der Simulation
`potential` | nein | real | Gesamtpotentielle Energie der Simulation
`pe` | nein | real | Gesamtpotentielle Energie der Simulation

#### Eine Kraft anwenden: `addforce(<mass>,<vec>)`

Beschreibung: Anwendung einer Kraft `<vec>` auf eine vorhandene Masse `<mass>`. Dieser Operator ist nützlich zur Implementierung von benutzerdefinierten Kraftfeldern. Er sollte im Slot `Integration Tick` aufgerufen werden.

#### Eine Kraft festlegen: `setforce(<mass>,<vec>)`

Beschreibung: Festlegen der Kraft `<vec>` für eine vorhandene Masse `<mass>`. Dieser Operator ist sehr nützlich zur Implementierung von benutzerdefinierten Kraftfeldern. Er sollte im Slot `Integration Tick` aufgerufen werden.

#### Abfragen von Teilchenkräften: `force(<vector>)`

Beschreibung: Der Operator `force` ist eng mit Physik-Simulationen in CindyLab verwandt. Er kann verwendet werden, um die Kraft zu testen, die auf ein Massepartikel an einer bestimmten Position wirken würde. Der Vektor `<vector>` stellt die Position dar. Der Operator gibt einen zweidimensionalen Vektor zurück, der die Kraft an dieser Position ist. Wenn keine Modifizierer verwendet werden, geht der Operator davon aus, dass das Testpartikel `mass=1`, `charge=1` und `radius=1` hat (siehe Freie Masse).

Beispiel: Das folgende Bild wurde mit dem Operator `drawforces` und einem Farbplot des Operators `force` erzeugt. Es zeigt das Kraftfeld und die Kraftstärke des elektrostatischen Feldes zweier Ladungen.

    A.charge=(|C,G|-3)*3;
    B.charge=(|E,H|-3)*3;
    f(x):=max((0,min([x,1])));
    colorplot([0.1,0.1,0.1]+hue(f(abs(force(#)/3))),(-10,-10),(20,10));
    drawforces(stream->true,move->0.2,color->[0,0,0],resolution->10);

Modifizierer: Es ist auch möglich, die Werte von Masse, Ladung und Radius explizit festzulegen. Jeder dieser Werte kann durch einen Modifizierer mit demselben Namen festgelegt werden. Wenn mindestens einer dieser Werte explizit festgelegt wird, werden alle nicht festgelegten Werte auf Null gesetzt. Somit testet `force([0,0],charge->2)` die Kraft, die für ein Partikel mit `charge=2`, `mass=0` und `radius=0` an Punkt `[0,0]` vorhanden wäre.

Diese Seite wurde automatisch mit KI (Claude) übersetzt und wartet noch auf Überprüfung. → Alle KI-übersetzten Seiten