microfem
2008-01-26, 06:59
Bone remodelling after Total Hip Replacement
Hi
I am working on a project where I have to simulate bone remodelling using abaqus and UMAT.
In my input file I start with a lower young's modulus and this is the value UMAT takes at the first iteration to calculate stresses.
Then it calculates the new young's modulus using the following equation.
EMOD=EMOD+EMOD*B*(((stran(1)+stran(2))/2)-control stran)
this is the DeltaEMOD = EMOD*B*(((stran(1)+stran(2))/2)-control stran)
B is the rate of bone adaptation
Then it saves this as a state variable and pass it on to input file, where one has to use *DEPVAR in order to accept this value and at next iteration this is given back to the UMAT to continue with the stresses calculation and material propeties calculation.
STATEV(1)=EMOD
My problem is how should I ensure that the program terminates when the EMOD is equal to the final EMOD as there is no error signal from the above control equation any more. I can use a condition here to observe whether the average strain is equal to expected strain or whether EMODS are equal and that EMOD should stay the same, but is this the way one should do it or is there a better way to do the same. If I give a condition at what range I should say that the error signal is zero.
Any comment and advice on this regard would be greatly appreciated.
Hi
I am working on a project where I have to simulate bone remodelling using abaqus and UMAT.
In my input file I start with a lower young's modulus and this is the value UMAT takes at the first iteration to calculate stresses.
Then it calculates the new young's modulus using the following equation.
EMOD=EMOD+EMOD*B*(((stran(1)+stran(2))/2)-control stran)
this is the DeltaEMOD = EMOD*B*(((stran(1)+stran(2))/2)-control stran)
B is the rate of bone adaptation
Then it saves this as a state variable and pass it on to input file, where one has to use *DEPVAR in order to accept this value and at next iteration this is given back to the UMAT to continue with the stresses calculation and material propeties calculation.
STATEV(1)=EMOD
My problem is how should I ensure that the program terminates when the EMOD is equal to the final EMOD as there is no error signal from the above control equation any more. I can use a condition here to observe whether the average strain is equal to expected strain or whether EMODS are equal and that EMOD should stay the same, but is this the way one should do it or is there a better way to do the same. If I give a condition at what range I should say that the error signal is zero.
Any comment and advice on this regard would be greatly appreciated.