Dear Moritz Jena,

To define a hyperelastic material law for a plane stress problem, the
easiest way is to add one extra variable representing the out of plane
strain. If mf1 is a scalar fem and mf2 is a vector fem with 2 components,
then you can simply do:

md = gf.Model("real")
md.add_fem_variable("u", mf2)           # displacements variable
md.add_fem_variable("epsZ", mf1)        # out of plane strain variable
md.add_initialized_data(’kappa’, kappa) # initial bulk modulus
md.add_initialized_data(’mu’, mu)       # initial shear modulus
md.add_initialized_data(’Th’, Th)       # plate thickness
md.add_macro("F", "Id(3)+Grad_u+epsZ*[0,0,0;0,0,0;0,0,1]") # 3D deformation
gradient
md.add_nonlinear_term(mim, "Th*0.5*kappa*sqr(log(Det(F)))+"
                            Th*0.5*mu*(pow(Det(F),-2/3)*Norm_sqr(F)-3)")

Best regards
Kostas



On Wed, Jan 16, 2019 at 9:40 PM Yves Renard <yves.ren...@insa-lyon.fr>
wrote:

>
>
> Dear Jena,
>
> For an hyperelastic law, the weak form of the static elastic problem can
> be written in the weak form language
>
>
> "Def F := Id(meshdim)+Grad_u; (F * S) : Grad_test_u"
>
> for u the displacement, F the deformation gradient and S has to contains
> the expression of the second Piola-Kirchhoff stress tensor (you can of
> course express it in term of PK1 also). For instance for a St Venant
> Kirchhoff law, you can write
>
> "Def F := Id(meshdim)+Grad_u; Def E := 0.5*(F'*F-Id(meshdim));  (F *
> (lambda*Trace(E)+2*mu*E)) : Grad_test_u"
>
> where E will be the Green Lagrange deformation tensor and lambda, mu the
> Lamé coefficients.
>
> This gives you some examples of construction of hyperelastic laws. The
> weak form language gives you access to some standard operators (Trace, Det
> ...) see
> http://getfem.org/userdoc/model_nonlinear_elasticity.html#high-level-generic-assembly-versions
>
>
> So, if you have the expression of your law in plane stress, it should not
> be very difficult to implement it. But of course you need the expression of
> the law in plane stress. On the construction itself of plane stress
> hyperelastic law, now, I don't know a good reference, unfortunately.
>
> Best regards,
>
> Yves
>
>
> ----- Original Message -----
> From: "Moritz Jena" <moritz.j...@scherdel.com>
> To: "yves renard" <yves.ren...@insa-lyon.fr>
> Cc: "getfem-users" <getfem-users@nongnu.org>
> Sent: Wednesday, January 16, 2019 2:17:01 PM
> Subject: Antwort: Re: [Getfem-users] 2D nonlinear plane stress
>
> Hello Yves,
>
> thank you for your answer.
>
> I'm afraid I'm not into the topic weak form language and I'm not sure
> where to start with this problem.
>
> I looked at the chapter in the documentation, however I don't know how to
> describe a plane stress material model with it.
>
> I also studied the examples, that come with the MATLAB-Interface. There
> are a few examples, how to declare a material model with this weak form
> expressions. But I still don't know, how to build this expressions.
>
> Can you give me a approach for this problem or where I can find
> expressions for such a problem?  Is there any literature that you can
> recommend?
>
> Best regards,
>
> Moritz
>
>
>
>
>
> Von:    Yves Renard <yves.ren...@insa-lyon.fr>
> An:     Moritz Jena <moritz.j...@scherdel.com>
> Kopie:  getfem-users <getfem-users@nongnu.org>
> Datum:  09.01.2019 17:17
> Betreff:        Re: [Getfem-users] 2D nonlinear plane stress
>
>
>
>
> Dear Moritz Jena,
>
> No, unfortunately, plane stress versions of Hyperelastic laws has not been
> implemented yet.
>
> I would not be so difficult, but as to be made. If you need one in
> particular and have the expression, it is no so difficult to describe it
> with the weak form language.
>
> Best regards,
>
> Yves
>
>
>
> ----- Original Message -----
> From: "Moritz Jena" <moritz.j...@scherdel.com>
> To: "getfem-users" <getfem-users@nongnu.org>
> Sent: Tuesday, January 8, 2019 4:11:48 PM
> Subject: [Getfem-users] 2D nonlinear plane stress
>
> Dear GetFEM-Users,
>
> I use the MATLAB-Interface of GetFEM to create a program that
> automatically solves different models of the same problem.
>
> The problem is three-dimensional, but can be reduced by plain stress
> approximation. (to reduce computing time).
>
> I want to define a nonlinear material with the brick
>
>                 gf_model_set(model M, 'add nonlinear elasticity brick',
> [...])
>
> For this nonlinear command it is specified in the description, that in 2D
> always plain strain is used.
>
> So my question is: Is there a way to define a nonlinear material with the
> plain stress approximation? Or is it planned to install such an option in
> a future release?
>
> I hope you can help me with my problem.
>
> Best regards,
>
> Moritz Jena
>
>

Reply via email to