You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Summary
Sibernetic calculates the ratio between the intantaneous muscle lengths and their lengths at rest, and feeds these through the Python interface at each timestep. The Python class itself decides what to do with the values, handing it to neurons, stretch receptors etc.
Quick demo implementation
To get a quick demo implemetation for testing:
(Sibernetic) Pick a single pair of particles in each of the 96 muscles (can be near the centre, but shouldn't matter too much)
(Sibernetic) Calculate the distance between these at t=0
(Sibernetic) At every time step, calculate the ratio between length at this timestep and t=0 (will be ~1 for no muscle activity, <1 and >0 for contracted, >1 for stretched) for each muscle.
(Sibernetic) Give these 96 values as an argument into the run function via the C++ call
(c302)The Python class can plot/save/use these values for changing muscle behaviour as outlined below
Full steps required
(Sibernetic) Sibernetic adds a command line option -zeroGinitTime where it turns gravity off, and lets the worm float while the body relaxes to the "steady state", i.e. equalised pressure state. Default for this value is 0ms, typical for reaching steady state will hopefully be 10-30ms.
(Sibernetic) Sibernetic saves the lengths for each of N individual connection (along the main axis of the worm) in each muscle in the relaxed state (so 96 sets of N particle separations).
(Sibernetic) Sibernetic turns on gravity and at each time step, it calculates the ratio of each of the N new muscle separation lengths to the initial value, and takes an average per muscle (so ~1 for no activity, <1 and >0 for contracted, >1 for stretched)
(Sibernetic) It gives these 96 values as an argument into the run function via the C++ call
(c302) The Python class can just ignore these values (as in the case of the sine wave generator) or plot/save them, or feed them to neurons/ion channels for stretch receptor feedback. The Python class should still calculate 96 muscle activation values as currently required.
The text was updated successfully, but these errors were encountered:
Summary
Sibernetic calculates the ratio between the intantaneous muscle lengths and their lengths at rest, and feeds these through the Python interface at each timestep. The Python class itself decides what to do with the values, handing it to neurons, stretch receptors etc.
Quick demo implementation
To get a quick demo implemetation for testing:
Full steps required
The text was updated successfully, but these errors were encountered: