Hi !
I’m working on a new project in which I’d like to study the effect of wheelchair propulsion on the shoulder joint. I think that the model named “WheelChairRancho” could be a good starting point.
My first objective will be to use our own .c3d files and here are my questions.
Of what I understood, the model doesn’t use the AnyInputC3D function but converted the c3d file using the c3d2any converter. Am I right ? If yes:
1/ are there any updates on the wheelchairancho model that would have been made to use the AnyInputC3D function ?
2/ if the AnyInputC3D function has not yet been implemented, would you recommend that I convert my own c3d files (as they did in the model) or, rather, that I transform the model to use the AnyInputC3D function ?
Lauranne,
I recommend to start with a new MoCap model and just look a little into the Wheel Chair model. The Rancho model was made 10 years ago and hasn’t seen a lot of maintenance since then.
Hi there,
I am as well working on a wheelchair model so I hope this is the right way to ask my question.
My Model is loading but as soon as I try to run the Optimization Study it’ll fails with
“5.0.0.1) …Load-time positions have been re-established.
WARNING! NAN reached!
Unexpected error in computational kernel
Constraint no. #0 in ‘Main.Studies.HumanModel.BodyModel.Right.ShoulderArm.Mus.ArtificialRake.LinCom2Drv’ above error tolerance 0.000001, error = 0.100000.
Constraint no. #0 in ‘Main.Studies.HumanModel.BodyModel.Left.ShoulderArm.Mus.ArtificialRake.LinCom2Drv’ above error tolerance 0.000001, error = 0.100000.
ERROR(OBJ.MCH.KIN3) : /2…o/D…o/A…o/AMMR/A…n/M…s/M…l/M…l/Kinematics.any(74) : MotionOptimization.InitialConditions : Kinematic analysis failed in time step 0”
So I tried activating/deactivating some markers to make the naming fit at least, but I think I might have to scale the size of the whole model to make C3D and MoCap markers match.
Or might it be possible to just change the error tolerance?
thanks a lot and I hope this is the right place to ask^^
Hi ! @aasadonis: In fact, I just start the project, so I’m probably not the good person to help you… Maybe just an idea, even if you probably already think to it : did you try to increase the tolerance for the LinCom2Drv ? i.e. rather than 0.000001, maybe you could try to set it at 0.150000. I know it’s huge, but you could launch your analysis and find where is the problem. After what you might decrease it.
Regarding my project: I’d have a new question regarding markers / nodes. My idea is to use the existing anatomical markers (I use the AnyBody model template “Human”) rather than creating new ones. I found all markers but one, located at the xiphoid process on thorax. I know that there are markers close to this landmark: I drew AnyRefNodes for thorax segment and would like to find the definition in the AnyBody Script for the node in red (see attached picture). Could you give me advice to easily find name and definition of specific markers ? I mean : AnyDrawRefNodes is fine to draw them; however, I can’t figure out how to find their own names.
Hey Lauranne!
thanks for your advice, but unfortunately I already tried playing with the tolerances.
I know that it is a marker problem and that there is something about the shoulder driver that makes anybody unhappy.
I’ll open a new thread as soon as I know more about it.
Hi Lauranne!
As I am not yet experienced enough to really interpret error messages in Anybody, I was just guessing from what is written in the error message. And that message refers to LinCom2Drv in the left and right shoulder.
And your idea seems pretty much legit especially as the error msg says: "Constraint No. #0[…] above error tolerance 0.000001, error = 0.100000."
But I’ll have to find out how to easily find the number of DOF and the Number of Constraints without going through all script files by hand counting each DOF and Constraint.
Hey !
In fact, there is a very easy way to found the number of dof vs constraints : just clic on your “Main” folder in the tree on your left. A complete description of your system will be displayed in the next right window (please, see attached picture if it’s unclear !)
Wooops, sent my answer too early !
Would anybody help or guide me to find the node on thorax I’m looking for ? Please, refer to my previous post (#6). Thank you !
Lauranne
Usually most of the AnyRefNodes in the AnyBody segments are related to either origin or insertion points of the muscles which are attached on that bone.
So what I would do is:
Turn on all the muscles in the trunk
Find the muscles which has your point of interest as either origin or insertion point
Move your mouse on the muscle and find that muscle in the model tree.
Then you can find the references of those points in the model tree.
Thank you Moonki for your advice !
I followed your steps and, you’re right, it’s rather easy to find the corresponding nodes.
My next question is the following: I’d like to create a Folder to store the references to the nodes where the Vicon markers are attached. For example, for only two of these markers, I wrote the following code:
I’d like to add a “AnyDrawNode” (at each node) or “AnyDrawNodes” (for all nodes) but I can’t figure out how to do it I tried the following code but (as I expected !) didn’t worked; the error I got being “ERROR(OBJ4) : D:/D…x/1…l/A…n/L…n/M…l/MarkersOnBones.any(32) : drw : Wrong owner class for AnyDrawNodes. Accepted owner(s): Any3DObject or derived”
Finally, the answer is “no”: adding AnyDrawNodes in a folder (i.e. not a segment folder) does not work.
So, here is the new question: how to easily draw nodes, i mean without having to go to the file were nodes are created? For example: the node “aa” located on the scapula segment/bone is created in the file “Seg.any”. My idea was to create a pointer and to add the node to this pointer:
In fact it appeared that the T8 node is not linked to any muscle (please, see attached picture, I'm looking for the green circled node). I tried by a trial and error process but, really, I am absolutely unable to found the reference of this node. Would you have any other advice or idea to get its reference?
Hello,
“good” news to see that there is not any easy solution !
In fact, I did what you’re suggesting; but I was interested in using the existing nodes to get the scale function already defined on them.
Lauranne.