OGS  master
cube_1e0_mfront_mod.prj
<OpenGeoSysProject>
  <mesh>cube_1x1x1_hex_1e0.vtu</mesh>
  <geometry>cube_1x1x1.gml</geometry>
  <processes>
    <process>
      <name>SD</name>
      <type>SMALL_DEFORMATION</type>
      <integration_order>2</integration_order>
      <constitutive_relation>
        <type>MFront</type>
        <behaviour>Lubby2mod</behaviour>
        <material_properties>
          <material_property name="YoungModulus" parameter="YoungModulus" />
          <material_property name="PoissonRatio" parameter="PoissonRatio" />
          <material_property name="KelvinShearModulus" parameter="GK0" />
          <material_property name="KelvinViscosity" parameter="etaK0" />
          <material_property name="MaxwellViscosity" parameter="etaM0" />
          <material_property name="KelvinElasticParameter" parameter="mK" />
          <material_property name="MaxwellViscoParameter" parameter="mvM" />
          <material_property name="KelvinViscoParameter" parameter="mvK" />
        </material_properties>
      </constitutive_relation>
      <solid_density>rho_sr</solid_density>
      <specific_body_force>0 0 0</specific_body_force>
      <process_variables>
        <process_variable>displacement</process_variable>
      </process_variables>
      <secondary_variables>
        <secondary_variable internal_name="sigma" output_name="sigma" />
      </secondary_variables>
    </process>
  </processes>
  <time_loop>
    <processes>
      <process ref="SD">
        <nonlinear_solver>basic_newton</nonlinear_solver>
        <convergence_criterion>
          <type>DeltaX</type>
          <norm_type>NORM2</norm_type>
          <abstol>1e-15</abstol>
        </convergence_criterion>
        <time_discretization>
          <type>BackwardEuler</type>
        </time_discretization>
        <time_stepping>
          <type>FixedTimeStepping</type>
          <t_initial>0</t_initial>
          <t_end>1</t_end>
          <timesteps>
            <pair>
              <repeat>1</repeat>
              <delta_t>0.0001</delta_t>
            </pair>
            <pair>
              <repeat>100</repeat>
              <delta_t>0.01</delta_t>
            </pair>
          </timesteps>
        </time_stepping>
      </process>
    </processes>
    <output>
      <type>VTK</type>
      <prefix>cube_1e0_mfront_mod</prefix>
      <timesteps>
        <pair>
          <repeat>1</repeat>
          <each_steps>1</each_steps>
        </pair>
        <pair>
          <repeat>1</repeat>
          <each_steps>10000000</each_steps>
        </pair>
      </timesteps>
      <variables>
        <variable>displacement</variable>
        <variable>sigma</variable>
      </variables>
      <suffix>ts{:timestep}_t_{:time}</suffix>
    </output>
  </time_loop>
  <parameters>
    <parameter>
      <name>GK0</name>
      <type>Constant</type>
      <value>0.8</value>
    </parameter>
    <parameter>
      <name>etaK0</name>
      <type>Constant</type>
      <value>0.5</value>
    </parameter>
    <parameter>
      <name>YoungModulus</name>
      <type>Constant</type>
      <value>1.8</value>
    </parameter>
    <parameter>
      <name>PoissonRatio</name>
      <type>Constant</type>
      <value>0.125</value>
    </parameter>
    <parameter>
      <name>etaM0</name>
      <type>Constant</type>
      <value>0.5</value>
    </parameter>
    <parameter>
      <name>mK</name>
      <type>Constant</type>
      <value>-0.2</value>
    </parameter>
    <parameter>
      <name>mvK</name>
      <type>Constant</type>
      <value>-0.2</value>
    </parameter>
    <parameter>
      <name>mvM</name>
      <type>Constant</type>
      <value>-0.3</value>
    </parameter>
    <parameter>
      <name>rho_sr</name>
      <type>Constant</type>
      <value>1</value>
    </parameter>
    <parameter>
      <name>displacement0</name>
      <type>Constant</type>
      <values>0 0 0</values>
    </parameter>
    <parameter>
      <name>neumann_force</name>
      <type>Constant</type>
      <values>0.01</values>
    </parameter>
    <parameter>
      <name>dirichlet0</name>
      <type>Constant</type>
      <value>0</value>
    </parameter>
  </parameters>
  <process_variables>
    <process_variable>
      <name>displacement</name>
      <components>3</components>
      <order>1</order>
      <initial_condition>displacement0</initial_condition>
      <boundary_conditions>
        <boundary_condition>
          <geometrical_set>cube_1x1x1_geometry</geometrical_set>
          <geometry>left</geometry>
          <type>Dirichlet</type>
          <component>1</component>
          <parameter>dirichlet0</parameter>
        </boundary_condition>
        <boundary_condition>
          <geometrical_set>cube_1x1x1_geometry</geometrical_set>
          <geometry>back</geometry>
          <type>Dirichlet</type>
          <component>1</component>
          <parameter>dirichlet0</parameter>
        </boundary_condition>
        <boundary_condition>
          <geometrical_set>cube_1x1x1_geometry</geometrical_set>
          <geometry>front</geometry>
          <type>Dirichlet</type>
          <component>0</component>
          <parameter>dirichlet0</parameter>
        </boundary_condition>
        <boundary_condition>
          <geometrical_set>cube_1x1x1_geometry</geometrical_set>
          <geometry>front</geometry>
          <type>Dirichlet</type>
          <component>1</component>
          <parameter>dirichlet0</parameter>
        </boundary_condition>
        <boundary_condition>
          <geometrical_set>cube_1x1x1_geometry</geometrical_set>
          <geometry>right</geometry>
          <type>Dirichlet</type>
          <component>1</component>
          <parameter>dirichlet0</parameter>
        </boundary_condition>
        <boundary_condition>
          <geometrical_set>cube_1x1x1_geometry</geometrical_set>
          <geometry>back</geometry>
          <type>Neumann</type>
          <component>0</component>
          <parameter>neumann_force</parameter>
        </boundary_condition>
        <boundary_condition>
          <geometrical_set>cube_1x1x1_geometry</geometrical_set>
          <geometry>top</geometry>
          <type>Dirichlet</type>
          <component>2</component>
          <parameter>dirichlet0</parameter>
        </boundary_condition>
        <boundary_condition>
          <geometrical_set>cube_1x1x1_geometry</geometrical_set>
          <geometry>bottom</geometry>
          <type>Dirichlet</type>
          <component>2</component>
          <parameter>dirichlet0</parameter>
        </boundary_condition>
      </boundary_conditions>
    </process_variable>
  </process_variables>
  <nonlinear_solvers>
    <nonlinear_solver>
      <name>basic_newton</name>
      <type>Newton</type>
      <max_iter>4</max_iter>
      <linear_solver>general_linear_solver</linear_solver>
    </nonlinear_solver>
  </nonlinear_solvers>
  <linear_solvers>
    <linear_solver>
      <name>general_linear_solver</name>
      <lis>-i cg -p jacobi -tol 1e-16 -maxiter 10000</lis>
      <eigen>
        <solver_type>CG</solver_type>
        <precon_type>DIAGONAL</precon_type>
        <max_iteration_step>10000</max_iteration_step>
        <error_tolerance>1e-16</error_tolerance>
      </eigen>
      <petsc>
        <prefix>sd</prefix>
        <parameters>-sd_ksp_type cg -sd_pc_type bjacobi -sd_ksp_rtol 1e-16 -sd_ksp_max_it 10000</parameters>
      </petsc>
    </linear_solver>
  </linear_solvers>
  <test_definition>
    <vtkdiff>
      <file>cube_1e0_mfront_mod_ts_1_t_0.000100.vtu</file>
      <field>displacement</field>
      <absolute_tolerance>5e-16</absolute_tolerance>
      <relative_tolerance>1e-16</relative_tolerance>
    </vtkdiff>
    <vtkdiff>
      <file>cube_1e0_mfront_mod_ts_101_t_1.000000.vtu</file>
      <field>displacement</field>
      <absolute_tolerance>5e-16</absolute_tolerance>
      <relative_tolerance>1e-16</relative_tolerance>
    </vtkdiff>
  </test_definition>
</OpenGeoSysProject>