Hyperelastic Pipe

I am trying to run a solid case for a hyperelastic pipe however, the results obtained are not realistic and do not align with analytical results.
I am not sure what I could fix in this file to make it work accurately.
Two ends of the pipe are fixed and a uniform pressure of 319 Pa is applied to its outer surface.
I applied the force using prePoMax and then manually changed the material to hyperelastic since prePoMax does not have that option.
I calculated hyperelastic constants from E = 1.44 MPa and poisson ratio = 0.47
Would appreciate any help.

Please check access settings, it seems that you have to set “Anyone with the link”.

Alright. Let me check.

Does this work for you?

Yes, now it’s ok. Can you say exactly how you converted this linear elasticity data to hyperelastic model constants (with what formulas) ?

The inputs according to the manual require constants C10 and D1 ( *HYPERELASTIC (mit.edu)).

The formula in the CCX manual is as follows:

I compared this to a paper which has the equation:

Since they both have a similar form, I assigned c10 = G/2 and D1 = 2/k

1 Like

Yes, that’s correct. Neo-Hookean model constants can be calculated this way based on the consistency with linear elasticity.

I will check your model later because I’m traveling and don’t have access to a computer now. However, screenshots showing the model with mesh and applied BCs and loads as well as results would make it faster/easier to help.


I really appreciate you looking at this.

I use C3D10 elements.

Could units be an issue?

Yes, I would check the units first. Especially those of hyperelastic model constants. Also, try with a lower load magnitude and higher initial time increment (it’s very low in your file). And perhaps shell elements should be used in this case.

In PrePoMax, when unit used is mm, then the value for E is in MPa so the values I put in are aligning with that assumed scale. I tried with higher time increment, and it gave the same value so I lowered it to see if more increments would give a better solution.
Were you able to run the case?

It’s always good to double-check all values and units in such cases but we can probably assume that they are fine here.

I won’t be able to check it until late Saturday or maybe even Sunday - I have a long travel ahead.

What you can still try is lowering the load magnitude and checking if it solves, enabling geometric nonlinearity and using shell elements. Different (less stiff) boundary conditions may also help. Apart from that, take a closer look at the results that you have so far - especially scaled deformed shape. You can use PrePoMax for postprocessing - it can open .frd files. Moreover, the definition of the hyperelastic material model doesn’t require exporting the input file, editing it in a text editor and submitting the analysis from the command line. You can just use the keyword editor available in PrePoMax and run the analysis without leaving this software.

1 Like

Alright. I will double check all values and also try a shell case.
Let me try the prePoMax editor too!

Hello @Calc_em
I followed your guidance and ran a shell case, double checked the units and ran the cases in prePoMax using the editor. I still got the same results

Can you share this new .pmx file ?

Getting exact result for hyper elasticity materials will mostly requires tested stress strain curves for the specific material.
My guess for a missing approximately result will be that you’re using a linear data set to define a curved Neo-Hookean data set without having an exact specific reference to the Neo-Hookean curve.

1 Like

Which are the expected values?

And how did you obtain the analytical results ? For hyperelastic cases it’s not so straightforward.

hi all, i late to participate a long discussion. did someone found a hints or conclusions? i’m also learning of rubber like materials since it’s new to me.

but it may about inconsistence units at material incompressibility parameters (D_1), i took simple test and found reasonable result when the unit is set to inverse/reciprocal

2023-02-02 19_11_23-SMath Solver - neohookeanmat.sm

this is another external discussion i replied about the units on hyper-elastic material, unfortunately none example exist.

The unit for D1 should be 1/MPa, also in CalculiX. Here’s an excerpt from Guido’s book:

Both Abaqus and CalculiX use the same equation for neo-Hookean model and thus D1=2/K.

I’m not familiar neither with Hyperelasticity but reading the Wiki I would say there could be a simple validation test for this ccx constitutive model.

“A hyperelastic or Green elastic material is a type of constitutive model for ideally elastic material for which the stress-strain relationship derives from a strain energy density function. The hyperelastic material is a special case of a Cauchy elastic material in which the the stresses does not depend on the path of deformation or the history of deformation”

If we imposed two deformation paths that end up in the same strain state, the final stresses should be the same as they should not depend on the path. What do you think? .I will give it a try.

A dimensional analysis of the equations known the strain energy density and Cauchy invariants units should could clear up any doubts.

Edited. Found on wikipedia.

Even though the stress in a Cauchy-elastic material depends only on the state of deformation, the work done by stresses may depend on the path of deformation. Therefore a Cauchy elastic material in general has a non-conservative structure, and the stress cannot necessarily be derived from a scalar “elastic potential” function. Materials that are conservative in this sense are called hyperelastic or “Green-elastic”.

So, Hyperelastic materials have a conservative stress-strain field in wich can be defined a corresponding potential (I guess the strain energy density function)