<?xml version="1.0" encoding="UTF-8" ?>
<case>
    <casedef>
        <constantsdef>
            <gravity x="0" y="0" z="-9.81" comment="Gravitational acceleration" units_comment="m/s^2" />
            <rhop0 value="{{ fluid.density }}" comment="Reference density of the fluid" units_comment="kg/m^3" />
            <hswl value="0" auto="true" comment="Maximum still water level to calculate the speed of sound using `coefsound`" units_comment="m" />
            <gamma value="7" comment="Polytropic constant for water used in the state equation" />
            <speedsystem value="0" auto="true" comment="Maximum system speed (by default the dam-break propagation is used)" />
            <coefsound value="20" comment="Coefficient to multiply `speedsystem`" />
            <speedsound value="0" auto="true" comment="Speed of sound to use in the simulation (by default speedofsound=coefsound*speedsystem)" />
            <coefh value="1.0" comment="Coefficient to calculate the smoothing length (h=coefh*sqrt(3*dp^2) in 3D)" />
            <cflnumber value="0.2" comment="Coefficient to multiply dt" />
        </constantsdef>
        <mkconfig boundcount="240" fluidcount="9" />
        <geometry>
            <definition dp="{{ particle_distance }}" units_comment="m">
                <pointmin x="-0.05" y="-0.05" z="-0.05" />
                <pointmax x="2" y="2" z="3" />
            </definition>
            <commands>
                <mainlist>
                    <setshapemode>dp | bound</setshapemode>
                    <setdrawmode mode="full" />
                    <setmkfluid mk="0" />
                    <drawbox>
                        <boxfill>solid</boxfill>
                        <point x="{{ fluid_position[0] }}" y="{{ fluid_position[1] }}" z="{{ fluid_position[2] }}" />
                        <size x="{{ fluid_dimensions[0]}}" y="{{ fluid_dimensions[1] }}" z="{{ fluid_dimensions[2] }}" />
                    </drawbox>
                    <setmkbound mk="0" />
                    <drawbox>
                        <boxfill>bottom | left | right | front | back</boxfill>
                        <point x="0" y="0" z="0" />
                        <size x="{{ tank_dimensions[0] }}" y="{{ tank_dimensions[1] }}" z="{{ tank_dimensions[2] }}" />
                    </drawbox>
                    <shapeout file="Box" />
                    <setmkvoid />
                    <shapeout file="Building" />
                </mainlist>
            </commands>
        </geometry>
    </casedef>
    <execution>
        <parameters>
            <parameter key="Kernel" value="1" comment="Interaction Kernel 1:Cubic Spline, 2:Wendland (default=2)" />
            <parameter key="ViscoTreatment" value="2" comment="Viscosity formulation 1:Artificial, 2:Laminar+SPS (default=1)" />
            <parameter key="Visco" value="{{ fluid.kinematic_viscosity }}" comment="Viscosity value" />
            <parameter key="DensityDT" value="2" comment="Density Diffusion Term 0:None, 1:Molteni, 2:Fourtakas, 3:Fourtakas(full) (default=0)" />
            <parameter key="DtIni" value="{{ time_step }}" comment="Initial time step. Use 0 to defult use (default=h/speedsound)" units_comment="seconds" />
            <parameter key="DtMin" value="0" comment="Minimum time step. Use 0 to defult use (default=coefdtmin*h/speedsound)" units_comment="seconds" />
            <parameter key="DtFixed" value="{{ 0 | int if adaptive_time_step else time_step }}" comment="Fixed Dt value. Use 0 to disable (default=disabled)" units_comment="seconds" />
            <parameter key="TimeMax" value="{{ simulation_time }}" comment="Time of simulation" units_comment="seconds" />
            <parameter key="TimeOut" value="{{ output_time_step }}" comment="Time frequency in which the data is exported" units_comment="seconds" />
            <simulationdomain comment="Defines domain of simulation (default=Uses minimum and maximum position of the generated particles)">
                <posmin x="default" y="default" z="default" comment="e.g.: x=0.5, y=default-1, z=default-10%" />
                <posmax x="default" y="default" z="default + 50%" />
            </simulationdomain>
        </parameters>		
    </execution>
</case>
