what is pattern of rotating a refernce frame

Dear Sir

When I am loading

MOCAP-driven Gait Models (C3D input): Full body or lower extremity gait model based MOCAP data. The model uses the redundant kinematic solver. It is a good starting point for understanding and making MOCAP driven models. The MOCAP data is imported directly from a C3D file.
Files: MoCap_FullBody.main.any,

with reference added & AnyMechOutputFileForceExport FE_out added the program becomes like this given below

#include “…/libdef.any”
// Switch to use the detail neck model
#define UseDetailNeckModel 0
// Switch to include Arms
#define UseUpperExtremities 1
// Prefix for the output file names
// to distinguish the full body and the lower body models
#define OutputFileNamePrefix “FullBody-”
// Switch to save all results in output folder
#ifndef AutoSaveOption
#define AutoSaveOption 0
#endif

// Detailed description can be found at:
#include “Model/Description.any”

//Set this to 1 if you want to run the motion and Parameter Optimization identification
//**************************************************
#ifndef MotionAndParameterOptimizationModel
#define MotionAndParameterOptimizationModel 0
#endif

//Set this to 1 if you want to run the inverse dynamic analysis
#ifndef InverseDynamicModel
#define InverseDynamicModel 1
#endif
//Usually only have one of the two switches active so set the inactive analysis to 0
//**************************************************

// Following will include several predefined classes to generate markers and environments
// Usually, there is no need to make changes in this file:
#include “Model/Classes.any”

Main = {

// This file controls most of the Settings of your Model, the following items are defined here:
// 1. Marker Names
// 2. Marker locations
#include “Model/ModelSetup.any”

// Define the Environment around the human
#include “Model/Environment.any”

// This file controls most of the Trial Specific setup, the following items are defined here:
// 1. C3D file Name
// 2. Start and End Frame
// 3. Subject Anthropometric data
// 4. Initial guess on position
// If you want to run the model on your own data this is the place to start:
#include “Input/TrialSpecificData.any”

AnyFolder Studies ={
// Usually, there is no need to make changes in the following files. PLease be aware. that
// changes in the Kinematics and InverseDynamics may lead to model failure and/or unrealistic results:
#if MotionAndParameterOptimizationModel
#include “Model/Kinematics.any”
#endif

#if InverseDynamicModel
#include "Model/InverseDynamics.any"  
#endif

AnyMechOutputFileForceExport FE_out =
{
FileName = “Output highload.xml”;
UseRefFrameOnOff = On;
AnyRefFrame & ref1 = Main.Studies.HumanModel.BodyModel.Right.Leg.Seg.Thigh;
AllSegmentsInStudyOnOff = Off;
XMLformatOnOff = On;
//AllSegmentsInStudyOnOff = Off;
AnySeg &thigh = Main.Studies.HumanModel.BodyModel.Right.Leg.Seg.Thigh;
};

AnyOperationShellExec ConvertToAbq={
Show=On;
FileName = "Output\AnyFE2Abq\AnyFE2Abq.exe";
Arguments = "-i .\Output	highload.xml -o .\Output\output.inp -m .\Output\implant.inp";
WorkDir=".\ ";

};
};
}; //Main

[b]But I am not getting the muscle load file of .xml format

please help me to solve this problem,
its extremely urgent[/b]

Thanks & regards

Mithun

//Set this to 1 if you want to run the motion and Parameter Optimization identification
//**************************************************
#ifndef MotionAndParameterOptimizationModel
#define MotionAndParameterOptimizationModel 0
#endif

//Set this to 1 if you want to run the inverse dynamic analysis
#ifndef InverseDynamicModel
#define InverseDynamicModel 1
#endif

You need to run the kinematic analysis first not to get the interpolation error. Highlighted values are used for switching between kinematic and inverse dynamic analysis.

Main.Studies.InverseDynamicStudy = {
  AnyMechOutputFileForceExport FE_out = 
    {
      FileName = "Output	highload.xml";
      UseRefFrameOnOff = On;
       AnyRefFrame & ref1 = Main.Studies.HumanModel.BodyModel.Right.Leg.Seg.Thigh;
      AllSegmentsInStudyOnOff = Off;
      XMLformatOnOff = On;
      //AllSegmentsInStudyOnOff = Off;
      AnySeg &thigh = Main.Studies.HumanModel.BodyModel.Right.Leg.Seg.Thigh;
    };
};    
    AnyOperationShellExec ConvertToAbq={
    Show=On;
    FileName = "Output\AnyFE2Abq\AnyFE2Abq.exe";
    Arguments = "-i .\Output	highload.xml -o .\Output\output.inp -m .\Output\implant.inp";
    WorkDir=".\ ";
  }; 
     };  
}; //Main

Secondly all output entities need to be added to the relevant studies. Highlighted red code should help you. The Abaqus converted will need to be called separately as an Operation. Check Operations tab.

Regards,
Pavel

Hello sir
Thanku for ur previous assistant
I am facing a problem
I edited the model as you suggested above , I got the muscle load .xml file, but when I want to convert this to abaqus file .inp by using anybody to abaqus converter and meshed file and when I select convert to abaqus in the study folder, and click on run application, it starts doing inverse dynamics again & does not generate the output file that I want to get analysis result in abaqus.

Please help in finding the solution

Thanks & Regards

Mithun Goyal

As i said - select this operation in the Operations tab and press run, but make sure that the right operation is selected. If it still does not run/generate your file - you need to check that the executable of the converter is in the right place, and if it is there you can add the following line to the argument list:
" > output.txt". After running this operation the file should be generated containing the description of your problem.

Otherwise we can’t help you further without knowing the error message.

Regards,
Pavel

Dear Sir

We are facing problem in analysis after applying muscle loading on the bone.
In anybody tutorial it is shown that there are multiple couplings on the bone but when we are doing we are getting only single coupling point. so how to solve this problem.

Regards ’
Mithun

Dear Mithun,

This problem may appear if the units are inconsistent between the musculoskeletal model and the FE model OR when the output reference frame does not match the reference frame of the FE mesh.

Please check that.

Regards,
Pavel

Dear Sir

I did not get your point,
Whether the reference frame that we have attached to the bone in anybody should match the reference frame attached to the our modelled bone.

Regards

Mithun Goyal

Dear Sir

If we want to export the bone surface along with the local reference frame attached to it so that when we open that STL file in any software it will show the same reference frame attached the bone as in anybody.

I am asking because when we export the model from anybody and using option local reference frame it does not show the reference frame that we have attached to it in the Anybody, its shows default reference frame in the software.

And also how to get the same reference frame on our generated model as it is in Anybody Model

How to solve this problem sir.
I need to solve this problem urgently sir
Please help me in solving this problem

Regards

Mithun goyal

Dear Mithun,

What I meant was that when you export the loads from your AnyBody simulation, they need to be in the coordinate system of the FE mesh. Meaning that the muscle attachments will be in the right places. If you output forces in a wrong CS (ref. frame) - connecting your muscles/force objects to the FE mesh will find the closest point, which will be common for many forces, and everything will be connected to this point, just like you described in the previous messages.

Have you checked that the units are consistent in your FE simulations? From the code below I see that you do not do any unit conversion. Most likely your FE model is in millimeters and this will cause a similar problem, since all muscles attachments point coordinates will be specified in meters.

I also see that you output everything into the segmental reference frame of the Thigh segment. Is you FE mesh aligned with the AnyBody geometry?

Please read the tutorial - it explains how to everything, including reference frames:
tutorial on Abaqus

Pavel

Dear sir
Thanku

But how to align the anybody geometry with my generated model so that the reference frame would be same

Regards
Mithun Goyal

Dear Sir

I am facing problem in aligning the reference frame of Anybody model with the generated model. How to align the reference frame to the generated model, Is there any method to confirm that the model is aligned to the anybody model

Sir its very urgent
Regards

Mithun

Mithun,

You need to create an AnyRefNode in the AnyBody script that will represent origin of your FE coordinate system. Once you have it - supply it into the output object and everything will be output in the right ref. frame.

AnyRefNode has two members sRel and ARel, which you need to supply. They respectively represent the translation and rotation needed to bring the AnyBody geometry into your FE geometry. This leaves you with a task of finding these vector and matrix.

Pavel

Dear Sir

Thanku

how to supply this reference frame to the output object.

Regards

Mithun

Dear Sir

When i have Written this in the anyBody program

AnyOperationShellExec ConvertToAbq={
Show=On;
FileName = “Output\AnyFE2Abq\AnyFE2Abq.exe”;
Arguments = “-i .\Output highload.xml -o .\Output\output.inp -m .\Output\implant1.inp”-r segment -t"a11 a12 a13 a21 a22 a23 a31 a32 a33 dx dy dz"

;

This error comes
ERROR(SCR.PRS11) : C:/U…s/v…a/A…a/R…g/A…y/A…x/A…o/A…n/E…s/S…l/StandingModel.Main.any(57) : ‘segment’ unexpected

how to solve this problem
Regards

Mithiun

Replace the red line by relevant objects in your code:

AnyMechOutputFileForceExport <ObjectName> =
{
FileName = “”;
/NumberFormat =
{
Digits = 15;
Width = 22;
Style = ScientificNumber;
FormatStr = “”;
};
/
//UseRefFrameOnOff = Off;
//AllSegmentsInStudyOnOff = Off;
//XMLformatOnOff = Off;
//ForceObjectExclude = ;
//ForceObjectList = ;
//AnyRefFrame &<Insert name0> = <Insert object reference (or full object definition)>; You can make any number of these objects!
//AnySeg &<Insert name0> = <Insert object reference (or full object definition)>; You can make any number of these objects!
};

“-r segment -t"a11 a12 a13 a21 a22 a23 a31 a32 a33 dx dy dz” " is probably not needed. But if the units conversion is needed - you need to provide actual numbers, not ‘template’ symbols. For example, -t “0.001 0 0 0 0.001 0 0 0 0.001 0 0 0”.

Pavel

Dear Sir

With the previous reply can I get multiple couplings during changing influence radius? But I am not getting the multiple couplings on the output object.

What Purpose it will actually solve if I do according to Previous reply.
Because my main motive is to get multiple couplings on the CT/MRI object, so please sir help me in solving my problem to get multiple couplings on the CT/MRI Object by suggesting a method.

Regards

Mithun

Dear Sir

I am Waiting for your reply

Regards

Mithun

Mithun,

I have previously stated that if you get a single ‘spider web’ - it means that your AnyBody output and the FE mesh are misaligned OR you have unit problems.

Please complete the tutorial to understand how everything works. And re-read my first and second answer in this thread.

Pavel

Dear Sir

I have solved the units problem
But i have tried it with the tutorial to align the reference frame but i am unable to understand the method.

Please elaborate to solve this reference frame problem

Thanks & regards
Mithun

Can you export your bone mesh or the CAD model as an STL?

You can then load it into the AnyBody model - this will show that the bones are misaligned. For example, you can do by adapting the following code to your files:


  Main.HumanModel.BodyModel.Right.Leg.Seg.Thigh = {
    AnyDrawRefFrame fr = {};
    AnyDrawSurf srf = {
      FileName = "yourSTLfilename.here";
      ScaleXYZ={1,1,1}*0.001;  // conversion mm to m (if needed)
    };
  };

This code will draw the ref. frame, which is the origin of your mesh CS. So the reference frame that you are looking for is the ref. frame that will be positioned relative to the AnyBody geometry as the CS origin to the mesh.

Since the geometries should be the same - this can be achieved by a rigid body transformation, that can be defined by the rotation matrix + displacement vector, which will be needed to construct the sRel and ARel of your ref. frame.

So you just need to find these matrix and vector as I explained before.

Does that help?

Regards,
Pavel