<ParameterList name="Main">
  <Parameter name="Amanzi Input Format Version" type="string" value="1.2.0"/>

  <!--
     Confined Aquifer Transient Drawdown (Theis 1935)
  -->
  <ParameterList name="General Description">
    <Parameter name="Model ID" type="string" value="Theis"/>
    <Parameter name="Author" type="string" value="Dylan Harp"/>
  </ParameterList>

  <!--
     Execution Control
  -->
  <ParameterList name="Execution Control">
    <Parameter name="Flow Model" type="string" value="Single Phase"/>
    <Parameter name="Transport Model" type="string" value="Off"/>
    <Parameter name="Chemistry Model" type="string" value="Off"/>

    <ParameterList name="Time Integration Mode">
        <ParameterList name="Transient">
          <Parameter name="Start" type="double" value="0.0"/>
          <Parameter name="End" type="double" value="1.64e5"/>
          <Parameter name="Initial Time Step" type="double" value="3.64"/>
        </ParameterList>
    </ParameterList>

    <Parameter name="Verbosity" type="string" value="High"/>

    <ParameterList name="Numerical Control Parameters">
      <ParameterList name="Unstructured Algorithm">
        <Parameter name="linear solver tolerance" type="double" value="1e-16"/>
        <Parameter name="linear solver maximum iterations" type="int" value="1000"/>
	<ParameterList name="Transient Implicit Time Integration">
	  <Parameter name="Transient Time Step Increase Factor" type="double" value="1.1"/>
	</ParameterList>
      </ParameterList>
    </ParameterList>
    
  </ParameterList>
  
  <ParameterList name="Domain">
    <Parameter name="Spatial Dimension" type="int" value="3"/>
  </ParameterList>


  <!--
  
    Mesh:  three-dimensional box [-100, 100 ] x [-100, 100] x [0,50] m

  -->
  <ParameterList name="Mesh">
    <ParameterList name="Unstructured">
      <ParameterList name="Expert">
	<Parameter name="Framework" type="string" value="MSTK"/>
      </ParameterList>
      <ParameterList name="Generate Mesh">
        <ParameterList name="Uniform Structured">
          <Parameter name="Number of Cells" type="Array(int)" value="{600,600,1}"/>
          <Parameter name="Domain Low Coordinate" type="Array(double)" value="{-1200,-1200,0.0}" />
          <Parameter name="Domain High Coordinate" type="Array(double)" value="{1200,1200,10.0}" />
        </ParameterList>
      </ParameterList>
    </ParameterList>
  </ParameterList>

  <!--

    Regions: 

  -->
  <ParameterList name="Regions">
    <!--
        Domains:
    -->
    
    <ParameterList name="Entire Domain">
      <ParameterList name="Region: Box">
	<Parameter name="Low Coordinate" type="Array(double)" value="{-1200,-1200,0.0}"/>
	<Parameter name="High Coordinate" type="Array(double)" value="{1200,1200,10.0}"/>
      </ParameterList>
    </ParameterList>
    <ParameterList name="Well">
      <ParameterList name="Region: Box">
	<Parameter name="Low Coordinate" type="Array(double)" value="{-2,-2,0.0}"/>
	<Parameter name="High Coordinate" type="Array(double)" value="{2,2,10.0}"/>
      </ParameterList>
    </ParameterList>

    <ParameterList name="Obs_r10">
      <ParameterList name="Region: Point">
        <Parameter name="Coordinate" type="Array(double)" value="{-33.0,0.0,5.0}"/>
      </ParameterList>
    </ParameterList>
    <ParameterList name="Obs_r30">
      <ParameterList name="Region: Point">
        <Parameter name="Coordinate" type="Array(double)" value="{-55.0,0.0,5.0}"/>
      </ParameterList>
    </ParameterList>
    <ParameterList name="Obs_r50">
      <ParameterList name="Region: Point">
        <Parameter name="Coordinate" type="Array(double)" value="{-161.0,0.0,5.0}"/>
      </ParameterList>
    </ParameterList>
    
    <ParameterList name="yz1">
      <ParameterList name="Region: Plane">
        <Parameter name="Location" type="Array(double)" value="{-1200,-1200,0.0}"/>
        <Parameter name="Direction" type="Array(double)" value="{-1.0,0.0,0.0}"/>
      </ParameterList>
    </ParameterList>
    <ParameterList name="yz2">
      <ParameterList name="Region: Plane">
        <Parameter name="Location" type="Array(double)" value="{1200,-1200,0.0}"/>
        <Parameter name="Direction" type="Array(double)" value="{1.0,0.0,0.0}"/>
      </ParameterList>
    </ParameterList>
    <ParameterList name="xz1">
      <ParameterList name="Region: Plane">
        <Parameter name="Location" type="Array(double)" value="{-1200,-1200,0.0}"/>
        <Parameter name="Direction" type="Array(double)" value="{0.0,-1.0,0.0}"/>
      </ParameterList>
    </ParameterList>
    <ParameterList name="xz2">
      <ParameterList name="Region: Plane">
        <Parameter name="Location" type="Array(double)" value="{-1200,1200,0.0}"/>
        <Parameter name="Direction" type="Array(double)" value="{0.0,1.0,0.0}"/>
      </ParameterList>
    </ParameterList>
  
  </ParameterList>

  <!--

    Materials:

  -->
  <ParameterList name="Material Properties">

    <ParameterList name="Soil">

      <Parameter name="Assigned Regions" type="Array(string)" value="{Entire Domain}"/>
      <ParameterList name="Porosity: Uniform">
        <Parameter name="Value" type="double" value="0.20"/>
      </ParameterList>
      <ParameterList name="Intrinsic Permeability: Uniform">
        <Parameter name="Value" type="double" value="2.350E-11"/>
      </ParameterList>
      <ParameterList name="Specific Storage: Uniform">
	<Parameter name="Value" type="double" value="7.5E-5"/>
      </ParameterList>

    </ParameterList>

  </ParameterList>

  <!--

    Phases:

  -->
  <ParameterList name="Phase Definitions">

    <ParameterList name="Aqueous">

      <ParameterList name="Phase Properties">
        <ParameterList name="Viscosity: Uniform">
          <Parameter name="Viscosity" type="double" value="1.002e-3"/>
        </ParameterList>
        <ParameterList name="Density: Uniform">
          <Parameter name="Density" type="double" value="1000"/>
        </ParameterList>
      </ParameterList>

    </ParameterList>

  </ParameterList>


  <!--

    Initial Conditions:

  -->

  <ParameterList name="Initial Conditions">
    
    <ParameterList name="Initial Condition">
      <Parameter name="Assigned Regions" type="Array(string)" value="{Entire Domain}"/>
      
      
      <!--
        Confined Aquifer with h=200m
      -->
      <ParameterList name="IC: Linear Pressure">
	<Parameter name="Reference Coordinate" type="Array(double)" value="{1200,1200,20}"/>
	<Parameter name="Reference Value" type="double" value="101325"/>
	<Parameter name="Gradient Value" type="Array(double)" value="{0.0,0.0,-9806.65}"/>
      </ParameterList>
      
    </ParameterList>
  </ParameterList>-->

  
  <!--

    Source Terms:

  -->
  <ParameterList name="Sources">
    
    <ParameterList name="Pumping Well">

      <Parameter name="Assigned Regions" type="Array(string)" value="{Well}"/>
      <ParameterList name="Source: Volume Weighted">
        <Parameter name="Times" type="Array(double)" value="{0.0,1.64e5}"/>
        <Parameter name="Time Functions" type="Array(string)" value="{Constant}"/>
        <Parameter name="Values" type="Array(double)" value="{-4.0, -4.0}"/>
      </ParameterList>
      
    </ParameterList>

  </ParameterList>


  <!--

    Boundary Conditions

  -->
  <ParameterList name="Boundary Conditions">

    <ParameterList name="Far Field Head">
      <Parameter name="Assigned Regions" type="Array(string)" value="{xz1, xz2, yz1, yz2}"/>
      <ParameterList name="BC: Hydrostatic">
        <Parameter name="Times" type="Array(double)" value="{0.0, 1.64e5}"/>
        <Parameter name="Time Functions" type="Array(string)" value="{Constant}"/>
        <Parameter name="Water Table Height" type="Array(double)" value="{20.0,20.0}"/>
      </ParameterList>
    </ParameterList>
   
  </ParameterList>

  <!--

    Output

  -->
  <ParameterList name="Output">

    <ParameterList name="Time Macros">
      <ParameterList name="Observation Times">
	<Parameter name="Values" type="Array(double)" value="{0.0,0.0864,0.4,400,500,600,5000,8000,10000,28000,35000,43000,81000,90000,100000,164000
							     }"/>
      </ParameterList>
    </ParameterList>

    <ParameterList name="Cycle Macros">

      <ParameterList name="Every Cycle">
	<Parameter name="Start_Period_Stop" type="Array(int)" value="{0,1,-1}"/>
      </ParameterList>
     

    </ParameterList>

    <ParameterList name="Observation Data">
      <Parameter name="Observation Output Filename" type="string" value="observation.out"/>
      <ParameterList name="Pressure 01">
	<Parameter name="Region" type="string" value="Obs_r10"/>
	<Parameter name="Functional" type="string" value="Observation Data: Point"/>
	<Parameter name="Variable" type="string" value="Aqueous pressure"/>
	<Parameter name="Time Macro" type="string" value="Observation Times"/>
      </ParameterList>
      <ParameterList name="Pressure 02">
	<Parameter name="Region" type="string" value="Obs_r30"/>
	<Parameter name="Functional" type="string" value="Observation Data: Point"/>
	<Parameter name="Variable" type="string" value="Aqueous pressure"/>
	<Parameter name="Time Macro" type="string" value="Observation Times"/>
      </ParameterList>
      <ParameterList name="Pressure 03">
	<Parameter name="Region" type="string" value="Obs_r50"/>
	<Parameter name="Functional" type="string" value="Observation Data: Point"/>
	<Parameter name="Variable" type="string" value="Aqueous pressure"/>
	<Parameter name="Time Macro" type="string" value="Observation Times"/>
      </ParameterList>
    </ParameterList>

   


  </ParameterList>

</ParameterList>
