\begin{Verbatim}[commandchars=\\\{\}]
\PY{k}{class} \PY{n+nc}{StVenantKirchhoff}\PY{p}{(}\PY{n}{MaterialModel}\PY{p}{)}\PY{p}{:}
    \PY{l+s+sd}{"""Defines the strain energy function for a St. Venant-Kirchhoff}
\PY{l+s+sd}{    material"""}

    \PY{k}{def} \PY{n+nf}{model\PYZus{}info}\PY{p}{(}\PY{n+nb+bp}{self}\PY{p}{)}\PY{p}{:}
        \PY{n+nb+bp}{self}\PY{o}{.}\PY{n}{num\PYZus{}parameters} \PY{o}{=} \PY{l+m+mi}{2}
        \PY{n+nb+bp}{self}\PY{o}{.}\PY{n}{kinematic\PYZus{}measure} \PY{o}{=} \PY{l+s}{"}\PY{l+s}{GreenLagrangeStrain}\PY{l+s}{"}

    \PY{k}{def} \PY{n+nf}{strain\PYZus{}energy}\PY{p}{(}\PY{n+nb+bp}{self}\PY{p}{,} \PY{n}{parameters}\PY{p}{)}\PY{p}{:}
        \PY{n}{E} \PY{o}{=} \PY{n+nb+bp}{self}\PY{o}{.}\PY{n}{E}
        \PY{p}{[}\PY{n}{mu}\PY{p}{,} \PY{n}{lmbda}\PY{p}{]} \PY{o}{=} \PY{n}{parameters}
        \PY{k}{return} \PY{n}{lmbda}\PY{o}{/}\PY{l+m+mi}{2}\PY{o}{*}\PY{p}{(}\PY{n}{tr}\PY{p}{(}\PY{n}{E}\PY{p}{)}\PY{o}{*}\PY{o}{*}\PY{l+m+mi}{2}\PY{p}{)} \PY{o}{+} \PY{n}{mu}\PY{o}{*}\PY{n}{tr}\PY{p}{(}\PY{n}{E}\PY{o}{*}\PY{n}{E}\PY{p}{)}
\end{Verbatim}
