Interaction with CindyLab

(cached)
refresh print

Interaction with CindyLab


The simulation environment: simulation()




Description: This operator provides a handle to the simulation environment. The simulation environment offers several fields than can be used to access its global properties.


NameWriteableTypePurpose
frictionyesreal total friction of the simulation
gravityyesreal total gravity of the simulation
kineticnoreal total kinetic energy of the simulation
kenoreal total kinetic energy of the simulation
potentialnoreal total potential energy of the simulation
penoreal total potential energy of the simulation





Applying a force: addforce(<mass>,<vec>)



Description: Applying a force <vec> to an existing mass <mass>. This operator is useful to implement user defined force fields. It should be called in the Integration Tick slot.



Applying a force: setforce(<mass>,<vec>)



Description: Setting the force <vec> for an existing mass <mass>. This operator is very useful to implement user defined force fields. It should be called in the Integration Tick slot.



Probing particle forces: force(<vector>)




Description: The operator force is closely related to physics simulations in CindyLab. It can be used for testing the force that would affect a mass particle at a specific position. The vector <vector> represents the position. The operator returns a two-dimensional vector that is the force at this position. If no modifiers are used, the operator assumes that the probe particle has mass=1, charge=1 and radius=1 (see Free Mass).



Example: The following picture was generated using the drawforces operator and a color plot of the force operator. It shows the force field and force strength of the electrostatic field of two charges.






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);



Modifiers: It is also possible to set the values of mass, charge and radius explicitly. Each of these values can be set by a modifier of the same name. If at least one of these values is set explicitly, then all unset values are set to zero. Thus force([0,0],charge->2) tests the force that would be present for a particle of charge=2, mass=0, and radius=0 at point [0,0].


Contributors to this page: Wurster , Richter and Kortenkamp .
Page last modified on Thursday 10 of July, 2014 [08:18:13 UTC] by Wurster.

The content on this page is licensed under the terms of the License.


Menu