<?xml version="1.0"?>
<!DOCTYPE StGermainData SYSTEM "stgermain.dtd">
<!-- A StGermain input file -->
<!-- DTD to validate against -->

<StGermainData xmlns="http://www.vpac.org/StGermain/XML_IO_Handler/Jun2003">

<!--This section lists all the plugins that are to be loaded during the run.
Please refer to section 5(plugins) for documentation on how to create 
plugins.-->
        
        <!-- Plugin modules -->
        <list name="plugins">
                <param>SPModelTectonicUplift</param>
                <param>SPModelOrography</param>
                <param>SPModelFluvialErosion</param>
                <param>SPModelDiffusionErosion</param>
                <param>SPModelFaultModel</param>
                <param>SPModelIsostaticFlexure</param>
                <param>SPModelFileOutput</param>
                <param>SPModelFlowHierarchyViewer</param>
        </list>

<!--This section lists all the low level simulation parameters for controlling
the simulation. The DumpEvery parameter controls how often the data files are
dumped. OutputEvery determines how often the realtime visualization plugin
gets fired up. However for DumpeEvery and OutputEvery to take effect, the
fileOutput and the flowHierarchyViewer plugin has to be loaded during runtime.-->

        <!-- StGermain simulation parameters -->
        <param name="start"> 0 </param>
        <param name="maxTimeSteps"> 20 </param>
        <!--<param name="stopTime"> 30000 </param>-->
        <param name="dumpEvery"> 10 </param>
        <param name="outputEvery"> 1 </param>
        
<!--This section lists all the mesh parameters. The mesh input data can be loaded
into SPModel in several different ways. It can be loaded from the legacy spm 
input files, autogenerated, loaded from an envi file or from a text file
(Please refer to latter sections for the file format of the text file).
The parameters `rnx` and `rny` are the dimensions of the regular grid which
must be of the form 2^n.
The parameter smoothMesh applies a lagrangian smoother to the mesh data.-->

        <!-- SPModel mesh parameters -->
        <struct name="mesh">
                <!--<param name="type">fromSPMInput</param>-->
                <!--<param name="inputDirectory">input1</param>-->
                
                <!--<param name="type">autoGenerate</param>-->
                <!--<param name="nx"> 50 </param>-->
                <!--<param name="ny"> 50 </param>-->
                <!--<param name="sidex"> 1000000 </param>-->
                <!--<param name="sidey"> 1000000 </param>-->
                
                <!--<param name="type">fromEnviInput</param>-->
                <!--<param name="inputFile">balcanoona</param>-->
                <!--<param name="nodeCount"> 10000 </param>-->
                
                <param name="type">fromTextInput</param>
                <param name="inputFile">xyz01.dat</param>
                <param name="nodeCount"> 39184 </param>
                
                <param name="rnx"> 32 </param>
                <param name="rny"> 32 </param>
                <param name="smoothMesh"> False </param>
        </struct>
        
<!--This section lists all the faulting models. Each faulting model requires two
seperate files, one which has describes the shape of the faults and the
other stores the uplift rates. Two faulting models can also share a single
upliftRate file. Please refer to time series and fault model file formats
for further details.-->

        <!-- Faulting Models -->
        <struct name="faultModel">
                <struct name="firstFaultModel">
                        <param name="faultModelBoundaryFile"> faultModel1.txt </param>
                        <param name="faultModelUpliftRateFile"> faultModelUpliftRate.txt </param>
                </struct>
                <struct name="secondFaultModel">
                        <param name="faultModelBoundaryFile"> faultModel2.txt </param>
                        <param name="faultModelUpliftRateFile"> faultModelUpliftRate.txt </param>
                </struct>
        </struct>

<!--This section lists all the simulation parameters:

flexureInterval - Determines how often to call the flexural isostacy routine
interpolation           - linear/cubic interpolation.
staticDt                - The time step.
seaLevel                - The static sea level.
seaLevelFile    - This is a parameter series file that overrides the static
                          seaLevel.-->

        <!-- SPModel simulation parameters -->
        <param name="flexureInterval"> 1 </param>
        <param name="interpolation">Cubic</param>
        <param name="staticDt"> 25 </param>
        <param name="gravity"> 9.8e0 </param>
        <param name="seaLevel"> 0.0f </param>
        <param name="seaLevelFile"> seaLevel.txt </param>
        <param name="oroRate"> 2.e+4 </param>
        <param name="oroLength"> 0.0f </param>
        <param name="bedRockDiffusivity"> 2.0e1 </param>
        <param name="sedimentDiffusivity"> 1.0e2</param>
        <param name="submarineBedRockDiffusivity"> 1.0e1 </param>
        <param name="submarineSedimentDiffusivity"> 3.0e3 </param>
        <param name="fluvialConstant"> 3.0e-6 </param>
        <param name="upliftRate"> 6.0e-4 </param>
        <param name="bedRockDensity"> 2.8e3 </param>
        <param name="sedimentDensity"> 2.4e3 </param>
        <param name="asthenosphereDensity"> 3.3e3 </param>
        <param name="flexuralRigidity"> 3.0e23 </param>
        <param name="elasticPlateLength"> 1000000.0f </param>

<!--This section lists all the flags that determine the parameters that are to be
dumped by the fileOutput plugin. Ofcource the fileOutput plugin must be loaded
at runtime for these flags to take effect.-->
        
        <!-- SPModel mesh file output parameters -->
        <struct name="fileOutput">
                <param name="outputFormat">text</param>
                <param name="outputDirectory">meshDumpExp</param>               
                <param name="itopography">True</param>          
                <param name="ierosion">True</param>             
                <param name="iuplift">True</param>              
                <param name="isedimentation">True</param>       
                <param name="iisostacy">True</param>
                <param name="idaughterNodes">True</param>
        </struct>

</StGermainData>