Topic: Nlgeo for mitc4

Hello,
I'd like to perform some geometric nonlinear analysis on a model with mitc4 shells which is not supported as of now. I wanted to implement the parts needed but I don't know what to write for these functions
1) mic4Shell::computeBHmatrixAt
2) SimpleCrossSection :: giveStiffnessMatrix_dPdF with matMode _3dDegeneratedShell
and consequently adjust the following
3) StructuralMaterial :: convert_dSdE_2_dPdF
4) StructuralMaterial :: giveVoigtVectorMask
to allow matMode _3dDegeneratedShell to be used.
Can someone give a hint?
Is it enough for 1) to redirect to computeBmatrixAt?
Regarding 2) should MITC4Shell :: computeConstitutiveMatrixAt be emulated?
Regarding point 4) I don't know which components should be extracted from the tempForceVector.
Once these points are set the others I guess should be easier.
Thanks to anyone willing to help.

2 (edited by nitramkaroh 25-03-2017 21:51:15)

Re: Nlgeo for mitc4

Hi,

computeBHmatrixAt gives discrete gradient operator, which is then used to compute the deformation gradient as

 F = I + Bh *d

However, it is not that easy for mitc4. It is needed, for example, to update the thickness during the incremental solution. I recommend these two papers for further details

Eduardo N. Dvorkin. Daniel Pantuso, Eduardo A. Repetto: A formulation of the MITC4 shell element for finite strain elasto-plastic analysis
Theodore Sussmana, Klaus-Jürgen Bathe: 3D-shell elements for structures in large strains

Re: Nlgeo for mitc4

I think many users underestimate shell elements and large deformations.

Step 1.
Spend 6 months reading up on the most advanced literature and theiry in contonuum mechanics, then derive all the new governing equations

Step 2, spend another couple of months implementing the eLement, test it out etc.

Re: Nlgeo for mitc4

Dear Martin,
thanks for your help, we're trying to go further. For MITC4, we want to keep the thickness as constant, as a first (necessary but not general) simplification.
In this post you wrote:

the MITC element doesn't support LinearStability. To do so, you would need to implement the initial stress stiffness matrix as is done in beam2d.C. The implementation of the  computeInitialStressMatrix works just for continuum elements like bricks, but not for structural elements like shells.

I found in literature that the geometric stiffness matrix (called in OOFEM initial stress matrix) can be determined in a general way as we see in:

Senjanović, I., Vladimir, N., & Cho, D. S. (2012). A simplified geometric stiffness in stability analysis of thin-walled structures by the finite element method. International Journal of Naval Architecture and Ocean Engineering, 4(3), 313-321.

It is still not clear to me how to proceed and the meaning of

F = I + Bh *d

, I need a basic symbol explanation...
It would be a good starting point for us to write down the geometric stiffness for quadmindlin shell, just to get into the content.

@Mikael: what do you mean exactly with your comment? it is not constructive at all. as you can see, a year passed. we already knew that this would be difficult.

Re: Nlgeo for mitc4

Dear Giovanni,

do you really need large strains, or would be small-strain and large rotation formulation satisfactory?
I am also interested in geometrically nonlinear formulation for MITC, unfortunately I don't have time to work on it. However, I can partially contribute if you need some help.
I think that it is a good start to implement initial stress matrix for MITC and try stability analysis.

The meaning of symbols is:
F - deformation gradient
I - unit matrix
Bh - discrete gradient operator
d - vector of degrees of freedom

You can also find some details on large strain analysis of MITC in this book
.N. Dvorkin and R.G. Toscano, Finite Element Analysis of the Collapse and
Post-Collapse Behavior of Steel Pipes: Applications to the Oil Industry,
Springer, 2014

Re: Nlgeo for mitc4

Dear Martin,
many thanks for your reply. I think small-strain and large rotations would be satisfatory, our aim is to achieve acceptable results in linear stability (buckling modes) analysis.
Thanks also for the symbol explanation, I'll have a look to the book you advised.

Re: Nlgeo for mitc4

Martin,
if you can, please have a look here, we tried to implement the initial stress matrix for tr_shell01. Er think that there's an error in local coordinates, we get zeroes along diagonal.
Can you help? thanks in advance

Re: Nlgeo for mitc4

Dear Giovanni,

sorry for the late answer, but I was on conference and holidays.
Is it still actual? If yes, I will try to look at it at the beginning of the next week.

Re: Nlgeo for mitc4

Dear Martin,
thanks for your reply. We managed the code and now we're able (in most cases) to obtain an answer.
We implemented the code for a simplified approach for stability analysis in:
- mitc4 (we forced the simplified approach)
- tr_shell01 (the static solution is not suitable to get reliable results for stability analysis)
- tr_shell02 (the code is curently missing the NodalAveraging function for results! - can you help on that?)

The matrices are taken from:
https://www.sciencedirect.com/science/a … 821630351X

We're currently unable to follow the approach you suggested, we have problems with the code.
Finally, please note that we've disregarded the rotational contributions and we're assuming constant thickness (i.e. the initial stress matrix written in mitc4 would have the same form as in quad1mindlinshell - the only change would be in the linear static results used for get the stresses).

10 (edited by johnnyontheweb 02-04-2019 10:23:25)

Re: Nlgeo for mitc4

Hello all,
we're trying again to write the correct nodal stress recovery algorithm for tr_shell02. can anyone help on that?

EDIT: we used a least squares like in MITC4. Anyway, I have still doubts on the nodal recovery in MITC4, I get inconsistent results. can you help?