[cig-commits] commit: Add a bunch of Q2Pm1 input files

Mercurial hg at geodynamics.org
Tue Sep 27 15:36:37 PDT 2011


changeset:   360:8e19c7f8a1cf
tag:         tip
user:        Walter Landry <wlandry at caltech.edu>
date:        Tue Sep 27 15:35:06 2011 -0700
files:       Q2Pm1_input/cookbook/viscous.xml Q2Pm1_input/cookbook/viscous_extension.xml Q2Pm1_input/cookbook/viscous_file.xml Q2Pm1_input/cookbook/viscous_inflow.xml Q2Pm1_input/cookbook/viscous_normal_stress.xml Q2Pm1_input/cookbook/viscous_split.xml
description:
Add a bunch of Q2Pm1 input files


diff -r 9d65571f1046 -r 8e19c7f8a1cf Q2Pm1_input/cookbook/viscous.xml
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Q2Pm1_input/cookbook/viscous.xml	Tue Sep 27 15:35:06 2011 -0700
@@ -0,0 +1,463 @@
+<?xml version="1.0"?>
+<StGermainData xmlns="http://www.vpac.org/StGermain/XML_IO_Handler/Jun2003">
+  <import>
+    <toolbox>Underworld</toolbox>
+  </import>
+  <plugins>
+    <struct>
+      <param name="Type">Underworld_EulerDeform</param>
+      <param name="Context">context</param>
+    </struct>
+    <struct>
+      <param name="Type">Underworld_VTKOutput</param>
+      <param name="Context">context</param>
+    </struct>
+    <struct>
+      <param name="Type">StgFEM_StandardConditionFunctions</param>
+      <param name="Context">context</param>
+    </struct>
+  </plugins>
+  <struct name="components">
+    <struct name="context">
+      <param name="Type">UnderworldContext</param>
+    </struct>
+    <struct name="mesh-Q2">
+      <param name="Type">FeMesh</param>
+      <param name="elementType">quadratic</param>
+    </struct>
+    <struct name="Q2Mesh-generator">
+      <param name="Type">C2Generator</param>
+      <param name="mesh">mesh-Q2</param>
+      <param name="dim">dim</param>
+      <param name="shadowDepth">shadowDepth</param>
+      <param name="regular">False</param>
+      <list name="size">
+        <param>elementResI</param>
+        <param>elementResJ</param>
+        <param>elementResK</param>
+      </list>
+      <list name="minCoord">
+        <param>minX</param>
+        <param>minY</param>
+        <param>minZ</param>
+      </list>
+      <list name="maxCoord">
+        <param>maxX</param>
+        <param>maxY</param>
+        <param>maxZ</param>
+      </list>
+    </struct>
+    <struct name="mesh-Pm1">
+      <param name="Type">FeMesh</param>
+      <param name="elementType">linear-inner</param>
+    </struct>
+    <struct name="Pm1Mesh-generator">
+      <param name="Type">Inner2DGenerator</param>
+      <param name="mesh">mesh-Pm1</param>
+      <param name="elementMesh">mesh-Q2</param>
+      <param name="dim">dim</param>
+      <param name="shadowDepth">shadowDepth</param>
+      <param name="regular">False</param>
+      <list name="size">
+        <param>elementResI</param>
+        <param>elementResJ</param>
+        <param>elementResK</param>
+      </list>
+      <list name="minCoord">
+        <param>minX</param>
+        <param>minY</param>
+        <param>minZ</param>
+      </list>
+      <list name="maxCoord">
+        <param>maxX</param>
+        <param>maxY</param>
+        <param>maxZ</param>
+      </list>
+    </struct>
+    <struct name="velocity">
+      <param name="Type">MeshVariable</param>
+      <param name="mesh">mesh-Q2</param>
+      <param name="Rank">Vector</param>
+      <param name="DataType">Double</param>
+      <param name="VectorComponentCount">dim</param>
+      <list name="names">
+        <param>vx</param>
+        <param>vy</param>
+        <param>vz</param>
+      </list>
+    </struct>
+    <struct name="velocityBCs">
+      <param name="Type">CompositeVC</param>
+      <param name="Data">mesh-Q2</param>
+    </struct>
+    <struct name="velocityICs">
+      <param name="Type">CompositeVC</param>
+      <param name="Data">mesh-Q2</param>
+    </struct>
+    <struct name="velocityDofLayout">
+      <param name="Type">DofLayout</param>
+      <param name="mesh">mesh-Q2</param>
+      <param name="BaseVariableCount">dim</param>
+      <list name="BaseVariables">
+        <param>vx</param>
+        <param>vy</param>
+        <param>vz</param>
+      </list>
+    </struct>
+    <struct name="VelocityField">
+      <param name="Type">FeVariable</param>
+      <param name="FEMesh">mesh-Q2</param>
+      <param name="DofLayout">velocityDofLayout</param>
+      <param name="BC">velocityBCs</param>
+      <param name="IC">velocityICs</param>
+      <param name="LinkedDofInfo">velocityLinkedDofs</param>
+    </struct>
+    <struct name="VelocityGradientsField">
+      <param name="Type">OperatorFeVariable</param>
+      <param name="Operator">Gradient</param>
+      <param name="FeVariable">VelocityField</param>
+    </struct>
+    <struct name="StrainRateField">
+      <param name="Type">OperatorFeVariable</param>
+      <param name="Operator">TensorSymmetricPart</param>
+      <param name="FeVariable">VelocityGradientsField</param>
+    </struct>
+    <struct name="StrainRateInvariantField">
+      <param name="Type">OperatorFeVariable</param>
+      <param name="Operator">SymmetricTensor_Invariant</param>
+      <param name="FeVariable">StrainRateField</param>
+    </struct>
+    <struct name="pressure">
+      <param name="Type">MeshVariable</param>
+      <param name="mesh">mesh-Pm1</param>
+      <param name="Rank">Scalar</param>
+      <param name="DataType">Double</param>
+    </struct>
+    <struct name="pressureDofLayout">
+      <param name="Type">DofLayout</param>
+      <param name="mesh">mesh-Pm1</param>
+      <list name="BaseVariables">
+        <param>pressure</param>
+      </list>
+    </struct>
+    <struct name="PressureField">
+      <param name="Type">FeVariable</param>
+      <param name="FEMesh">mesh-Pm1</param>
+      <param name="DofLayout">pressureDofLayout</param>
+      <param name="LinkedDofInfo">pressureLinkedDofs</param>
+    </struct>
+    <struct name="StressField">
+      <param name="Type">StressField</param>
+      <param name="StrainRateField">StrainRateField</param>
+      <param name="Context">context</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="IC">stressICs</param>
+    </struct>
+    <struct name="ViscosityField">
+      <param name="Type">ViscosityField</param>
+      <param name="Context">context</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+    </struct>
+    <struct name="cellLayout">
+      <param name="Type">ElementCellLayout</param>
+      <param name="Mesh">mesh-Q2</param>
+    </struct>
+    <struct name="particleLayout">
+      <param name="Type">GaussParticleLayout</param>
+      <param name="gaussParticles">3</param>
+    </struct>
+    <struct name="gaussSwarm">
+      <param name="Type">IntegrationPointsSwarm</param>
+      <param name="CellLayout">cellLayout</param>
+      <param name="ParticleLayout">particleLayout</param>
+      <param name="FeMesh">mesh-Q2</param>
+      <param name="TimeIntegrator">timeIntegrator</param>
+      <param name="IntegrationPointMapper">nearestMapper</param>
+    </struct>
+    <struct name="nearestMapper">
+      <param name="Type">NearestNeighborMapper</param>
+      <param name="IntegrationPointsSwarm">gaussSwarm</param>
+      <param name="MappedSwarm">picIntegrationPoints</param>
+    </struct>
+    <struct name="timeIntegrator">
+      <param name="Type">TimeIntegrator</param>
+      <param name="order">timeIntegratorOrder</param>
+      <param name="simultaneous">f</param>
+      <param name="Context">context</param>
+    </struct>
+    <struct name="weights">
+      <param name="Type">PCDVC</param>
+      <param name="resolutionX">20</param>
+      <param name="resolutionY">20</param>
+      <param name="resolutionZ">20</param>
+      <param name="lowerT">0.6</param>
+      <param name="upperT">25</param>
+      <param name="maxDeletions">3</param>
+      <param name="maxSplits">3</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="localLayout">
+      <param name="Type">MappedParticleLayout</param>
+    </struct>
+    <struct name="picIntegrationPoints">
+      <param name="Type">IntegrationPointsSwarm</param>
+      <param name="CellLayout">cellLayout</param>
+      <param name="ParticleLayout">localLayout</param>
+      <param name="FeMesh">mesh-Q2</param>
+      <param name="WeightsCalculator">weights</param>
+      <param name="TimeIntegrator">timeIntegrator</param>
+      <param name="IntegrationPointMapper">mapper</param>
+    </struct>
+    <struct name="mapper">
+      <param name="Type">CoincidentMapper</param>
+      <param name="IntegrationPointsSwarm">picIntegrationPoints</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="materialSwarmParticleLayout">
+      <param name="Type">MeshParticleLayout</param>
+      <param name="cellParticleCount">particlesPerCell</param>
+      <param name="mesh">mesh-Q2</param>
+    </struct>
+    <struct name="pMovementHandler">
+      <param name="Type">ParticleMovementHandler</param>
+    </struct>
+    <struct name="pShadowSync">
+      <param name="Type">ParticleShadowSync</param>
+    </struct>
+    <struct name="materialSwarm">
+      <param name="Type">MaterialPointsSwarm</param>
+      <param name="CellLayout">cellLayout</param>
+      <param name="ParticleLayout">materialSwarmParticleLayout</param>
+      <param name="FeMesh">mesh-Q2</param>
+      <list name="ParticleCommHandlers">
+        <param>pMovementHandler</param>
+        <param>pShadowSync</param>
+      </list>
+      <param name="SplittingRoutine">splittingRoutine</param>
+      <param name="RemovalRoutine">removalRoutine</param>
+      <param name="EscapedRoutine">escapedRoutine</param>
+    </struct>
+    <struct name="materialSwarmAdvector">
+      <param name="Type">SwarmAdvector</param>
+      <param name="Swarm">materialSwarm</param>
+      <param name="TimeIntegrator">timeIntegrator</param>
+      <param name="VelocityField">VelocityField</param>
+      <param name="PeriodicBCsManager">periodicBCsManager</param>
+      <param name="allowFallbackToFirstOrder">True</param>
+    </struct>
+    <struct name="solutionVelocity">
+      <param name="Type">SolutionVector</param>
+      <param name="FeVariable">VelocityField</param>
+    </struct>
+    <struct name="solutionPressure">
+      <param name="Type">SolutionVector</param>
+      <param name="FeVariable">PressureField</param>
+    </struct>
+    <struct name="mom_force">
+      <param name="Type">ForceVector</param>
+      <param name="FeVariable">VelocityField</param>
+      <param name="ExtraInfo">context</param>
+    </struct>
+    <struct name="cont_force">
+      <param name="Type">ForceVector</param>
+      <param name="FeVariable">PressureField</param>
+      <param name="ExtraInfo">context</param>
+    </struct>
+    <struct name="k_matrix">
+      <param name="Type">StiffnessMatrix</param>
+      <param name="RowVariable">VelocityField</param>
+      <param name="ColumnVariable">VelocityField</param>
+      <param name="RHS">mom_force</param>
+      <param name="allowZeroElementContributions">False</param>
+    </struct>
+    <struct name="constitutiveMatrix">
+      <param name="Type">ConstitutiveMatrixCartesian</param>
+      <param name="Swarm">gaussSwarm</param>
+      <param name="StiffnessMatrix">k_matrix</param>
+    </struct>
+    <struct name="g_matrix">
+      <param name="Type">StiffnessMatrix</param>
+      <param name="RowVariable">VelocityField</param>
+      <param name="ColumnVariable">PressureField</param>
+      <param name="RHS">mom_force</param>
+      <param name="transposeRHS">cont_force</param>
+      <param name="allowZeroElementContributions">False</param>
+    </struct>
+    <struct name="gradientStiffnessMatrixTerm">
+      <param name="Type">GradientStiffnessMatrixTerm</param>
+      <param name="Swarm">gaussSwarm</param>
+      <param name="StiffnessMatrix">g_matrix</param>
+    </struct>
+    <struct name="preconditioner">
+      <param name="Type">StiffnessMatrix</param>
+      <param name="RowVariable">PressureField</param>
+      <param name="ColumnVariable">PressureField</param>
+      <param name="RHS">cont_force</param>
+      <param name="allowZeroElementContributions">True</param>
+    </struct>
+    <struct name="preconditionerTerm">
+      <param name="Type">UzawaPreconditionerTerm</param>
+      <param name="Swarm">gaussSwarm</param>
+      <param name="StiffnessMatrix">preconditioner</param>
+    </struct>
+    <struct name="uzawa">
+      <param name="Type">Stokes_SLE_UzawaSolver</param>
+      <param name="velocitySolver">matrixSolver</param>
+      <param name="Preconditioner">preconditioner</param>
+      <param name="tolerance">linearTolerance</param>
+      <param name="monitor">false</param>
+      <param name="maxIterations">5000</param>
+      <param name="minIterations">1</param>
+    </struct>
+    <struct name="stokesEqn">
+      <param name="Type">Stokes_SLE</param>
+      <param name="SLE_Solver">uzawa</param>
+      <param name="Context">context</param>
+      <param name="StressTensorMatrix">k_matrix</param>
+      <param name="GradientMatrix">g_matrix</param>
+      <param name="DivergenceMatrix"></param>
+      <param name="VelocityVector">solutionVelocity</param>
+      <param name="PressureVector">solutionPressure</param>
+      <param name="ForceVector">mom_force</param>
+      <param name="ContinuityForceVector">cont_force</param>
+      <param name="nonLinearMaxIterations">nonLinearMaxIterations</param>
+      <param name="nonLinearTolerance">nonLinearTolerance</param>
+      <param name="makeConvergenceFile">false</param>
+    </struct>
+    <struct name="buoyancyForceTerm">
+      <param name="Type">BuoyancyForceTerm</param>
+      <param name="ForceVector">mom_force</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="gravity">gravity</param>
+    </struct>
+    <struct name="background">
+      <param name="Type">Everywhere</param>
+    </struct>
+    <struct name="escapedRoutine">
+      <param name="Type">EscapedRoutine</param>
+      <param name="idealParticleCount">0</param>
+    </struct>
+    <struct name="velocityRemesher">
+      <param name="Type">RegularRemesherCmpt</param>
+      <param name="mesh">mesh-Q2</param>
+      <list name="remeshDims">
+        <param>0</param>
+        <param>1</param>
+        <param>2</param>
+      </list>
+    </struct>
+
+    <struct name="boxShape">
+      <param name="Type">Box</param>
+      <param name="startX">minX</param>
+      <param name="endX">maxX</param>
+      <param name="startY">minY</param>
+      <param name="endY">maxY</param>
+      <param name="startZ">minZ</param>
+      <param name="endZ">maxZ</param>
+    </struct>
+    <struct name="backgroundViscosity">
+      <param name="Type">MaterialViscosity</param>
+      <param name="eta0">1.0</param>
+    </struct>
+    <struct name="storeViscosity">
+      <param name="Type">StoreVisc</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="storeStress">
+      <param name="Type">StoreStress</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="viscous">
+      <param name="Type">RheologyMaterial</param>
+      <param name="Shape">boxShape</param>
+      <param name="density">1.0</param>
+      <list name="Rheology">
+        <param>backgroundViscosity</param>
+        <param>storeViscosity</param>
+        <param>storeStress</param>
+      </list>
+    </struct>
+
+  </struct>
+
+  <list name="FieldVariablesToCheckpoint">
+    <param>VelocityField</param>
+    <param>PressureField</param>
+  </list>
+  <param name="timeIntegratorOrder">1</param>
+  <param name="maxTimeSteps">10</param>
+  <param name="outputEvery">1</param>
+  <param name="dumpEvery">1</param>
+  <param name="outputPath">./output</param>
+  <param name="dim">2</param>
+  <param name="shadowDepth">1</param>
+  <param name="minX">0.0f</param>
+  <param name="minY">0.0f</param>
+  <param name="minZ">0.0f</param>
+  <param name="maxX">2.0f</param>
+  <param name="maxY">0.35f</param>
+  <param name="maxZ">0.3f</param>
+  <param name="elementResI">16</param>
+  <param name="elementResJ">8</param>
+  <param name="elementResK">4</param>
+  <param name="allowUnbalancing">True</param>
+  <param name="buildNodeNeighbourTbl">True</param>
+  <param name="buildElementNeighbourTbl">True</param>
+  <param name="particlesPerCell">40</param>
+  <param name="seed">13</param>
+  <struct name="EulerDeform">
+    <list name="systems">
+      <struct>
+        <param name="mesh">mesh-Q2</param>
+        <param name="remesher">velocityRemesher</param>
+        <param name="velocityField">VelocityField</param>
+        <param name="wrapTop">True</param>
+      </struct>
+    </list>
+  </struct>
+  <struct name="velocityBCs">
+    <param name="type">CompositeVC</param>
+    <list name="vcList">
+      <struct>
+        <param name="type">WallVC</param>
+        <param name="wall">left</param>
+        <list name="variables">
+          <struct>
+            <param name="name">vx</param>
+            <param name="type">double</param>
+            <param name="value">0.0</param>
+          </struct>
+        </list>
+      </struct>
+      <struct>
+        <param name="type">WallVC</param>
+        <param name="wall">right</param>
+        <list name="variables">
+          <struct>
+            <param name="name">vx</param>
+            <param name="type">double</param>
+            <param name="value">0.0</param>
+          </struct>
+        </list>
+      </struct>
+      <struct>
+        <param name="type">WallVC</param>
+        <param name="wall">bottom</param>
+        <list name="variables">
+          <struct>
+            <param name="name">vy</param>
+            <param name="type">double</param>
+            <param name="value">0.0</param>
+          </struct>
+        </list>
+      </struct>
+    </list>
+  </struct>
+  <param name="checkpointEvery">1</param>
+  <param name="gravity">1.0</param>
+</StGermainData>
diff -r 9d65571f1046 -r 8e19c7f8a1cf Q2Pm1_input/cookbook/viscous_extension.xml
--- a/Q2Pm1_input/cookbook/viscous_extension.xml	Sat Sep 24 13:52:39 2011 -0700
+++ b/Q2Pm1_input/cookbook/viscous_extension.xml	Tue Sep 27 15:35:06 2011 -0700
@@ -74,32 +74,6 @@
         <param>maxZ</param>
       </list>
     </struct>
-    <struct name="mesh-Q1">
-      <param name="Type">FeMesh</param>
-      <param name="elementType">linear</param>
-    </struct>
-    <struct name="Q1Mesh-generator">
-      <param name="Type">CartesianGenerator</param>
-      <param name="mesh">mesh-Q1</param>
-      <param name="dim">dim</param>
-      <param name="shadowDepth">shadowDepth</param>
-      <param name="regular">False</param>
-      <list name="size">
-        <param>elementResI</param>
-        <param>elementResJ</param>
-        <param>elementResK</param>
-      </list>
-      <list name="minCoord">
-        <param>minX</param>
-        <param>minY</param>
-        <param>minZ</param>
-      </list>
-      <list name="maxCoord">
-        <param>maxX</param>
-        <param>maxY</param>
-        <param>maxZ</param>
-      </list>
-    </struct>
     <struct name="velocity">
       <param name="Type">MeshVariable</param>
       <param name="mesh">mesh-Q2</param>
@@ -138,29 +112,14 @@
       <param name="IC">velocityICs</param>
       <param name="LinkedDofInfo">velocityLinkedDofs</param>
     </struct>
-    <struct name="VelocityMagnitudeField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">Magnitude</param>
-      <param name="FeVariable">VelocityField</param>
-    </struct>
     <struct name="VelocityGradientsField">
       <param name="Type">OperatorFeVariable</param>
       <param name="Operator">Gradient</param>
       <param name="FeVariable">VelocityField</param>
     </struct>
-    <struct name="VelocityGradientsInvariantField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">TensorInvariant</param>
-      <param name="FeVariable">VelocityGradientsField</param>
-    </struct>
     <struct name="StrainRateField">
       <param name="Type">OperatorFeVariable</param>
       <param name="Operator">TensorSymmetricPart</param>
-      <param name="FeVariable">VelocityGradientsField</param>
-    </struct>
-    <struct name="VorticityField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">TensorAntisymmetricPart</param>
       <param name="FeVariable">VelocityGradientsField</param>
     </struct>
     <struct name="StrainRateInvariantField">
@@ -187,22 +146,22 @@
       <param name="DofLayout">pressureDofLayout</param>
       <param name="LinkedDofInfo">pressureLinkedDofs</param>
     </struct>
-    <!-- <struct name="StressField"> -->
-    <!--   <param name="Type">StressField</param> -->
-    <!--   <param name="StrainRateField">StrainRateField</param> -->
-    <!--   <param name="Context">context</param> -->
-    <!--   <param name="ConstitutiveMatrix">constitutiveMatrix</param> -->
-    <!--   <param name="Swarm">picIntegrationPoints</param> -->
-    <!--   <param name="Mesh">mesh-Pm1</param> -->
-    <!--   <param name="IC">stressICs</param> -->
-    <!-- </struct> -->
-    <!-- <struct name="ViscosityField"> -->
-    <!--   <param name="Type">ViscosityField</param> -->
-    <!--   <param name="Context">context</param> -->
-    <!--   <param name="Swarm">picIntegrationPoints</param> -->
-    <!--   <param name="Mesh">mesh-Pm1</param> -->
-    <!--   <param name="ConstitutiveMatrix">constitutiveMatrix</param> -->
-    <!-- </struct> -->
+    <struct name="StressField">
+      <param name="Type">StressField</param>
+      <param name="StrainRateField">StrainRateField</param>
+      <param name="Context">context</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="IC">stressICs</param>
+    </struct>
+    <struct name="ViscosityField">
+      <param name="Type">ViscosityField</param>
+      <param name="Context">context</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+    </struct>
     <struct name="cellLayout">
       <param name="Type">ElementCellLayout</param>
       <param name="Mesh">mesh-Q2</param>
@@ -224,24 +183,17 @@
       <param name="IntegrationPointsSwarm">gaussSwarm</param>
       <param name="MappedSwarm">picIntegrationPoints</param>
     </struct>
-    <struct name="backgroundLayout">
-      <param name="Type">BackgroundParticleLayout</param>
-    </struct>
     <struct name="timeIntegrator">
       <param name="Type">TimeIntegrator</param>
       <param name="order">timeIntegratorOrder</param>
       <param name="simultaneous">f</param>
       <param name="Context">context</param>
     </struct>
-    <struct name="elementCellLayout">
-      <param name="Type">ElementCellLayout</param>
-      <param name="Mesh">mesh-Q2</param>
-    </struct>
     <struct name="weights">
       <param name="Type">PCDVC</param>
-      <param name="resolutionX">10</param>
-      <param name="resolutionY">10</param>
-      <param name="resolutionZ">10</param>
+      <param name="resolutionX">20</param>
+      <param name="resolutionY">20</param>
+      <param name="resolutionZ">20</param>
       <param name="lowerT">0.6</param>
       <param name="upperT">25</param>
       <param name="maxDeletions">3</param>
@@ -253,7 +205,7 @@
     </struct>
     <struct name="picIntegrationPoints">
       <param name="Type">IntegrationPointsSwarm</param>
-      <param name="CellLayout">elementCellLayout</param>
+      <param name="CellLayout">cellLayout</param>
       <param name="ParticleLayout">localLayout</param>
       <param name="FeMesh">mesh-Q2</param>
       <param name="WeightsCalculator">weights</param>
@@ -278,7 +230,7 @@
     </struct>
     <struct name="materialSwarm">
       <param name="Type">MaterialPointsSwarm</param>
-      <param name="CellLayout">elementCellLayout</param>
+      <param name="CellLayout">cellLayout</param>
       <param name="ParticleLayout">materialSwarmParticleLayout</param>
       <param name="FeMesh">mesh-Q2</param>
       <list name="ParticleCommHandlers">
@@ -368,7 +320,6 @@
       <param name="StressTensorMatrix">k_matrix</param>
       <param name="GradientMatrix">g_matrix</param>
       <param name="DivergenceMatrix"></param>
-      <param name="CompressibilityMatrix">c_matrix</param>
       <param name="VelocityVector">solutionVelocity</param>
       <param name="PressureVector">solutionPressure</param>
       <param name="ForceVector">mom_force</param>
@@ -377,12 +328,11 @@
       <param name="nonLinearTolerance">nonLinearTolerance</param>
       <param name="makeConvergenceFile">false</param>
     </struct>
-    <struct name="c_matrix">
-      <param name="Type">StiffnessMatrix</param>
-      <param name="RowVariable">PressureField</param>
-      <param name="ColumnVariable">PressureField</param>
-      <param name="RHS">cont_force</param>
-      <param name="allowZeroElementContributions">True</param>
+    <struct name="buoyancyForceTerm">
+      <param name="Type">BuoyancyForceTerm</param>
+      <param name="ForceVector">mom_force</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="gravity">gravity</param>
     </struct>
     <struct name="background">
       <param name="Type">Everywhere</param>
@@ -414,22 +364,22 @@
       <param name="Type">MaterialViscosity</param>
       <param name="eta0">1.0</param>
     </struct>
-    <!-- <struct name="storeViscosity"> -->
-    <!--   <param name="Type">StoreVisc</param> -->
-    <!--   <param name="MaterialPointsSwarm">materialSwarm</param> -->
-    <!-- </struct> -->
-    <!-- <struct name="storeStress"> -->
-    <!--   <param name="Type">StoreStress</param> -->
-    <!--   <param name="MaterialPointsSwarm">materialSwarm</param> -->
-    <!-- </struct> -->
+    <struct name="storeViscosity">
+      <param name="Type">StoreVisc</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="storeStress">
+      <param name="Type">StoreStress</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
     <struct name="viscous">
       <param name="Type">RheologyMaterial</param>
       <param name="Shape">boxShape</param>
       <param name="density">1.0</param>
       <list name="Rheology">
         <param>backgroundViscosity</param>
-        <!-- <param>storeViscosity</param> -->
-        <!-- <param>storeStress</param> -->
+        <param>storeViscosity</param>
+        <param>storeStress</param>
       </list>
     </struct>
 
@@ -460,9 +410,6 @@
   <param name="buildElementNeighbourTbl">True</param>
   <param name="particlesPerCell">40</param>
   <param name="seed">13</param>
-  <param name="gaussParticlesX">2</param>
-  <param name="gaussParticlesY">2</param>
-  <param name="gaussParticlesZ">2</param>
   <struct name="EulerDeform">
     <list name="systems">
       <struct>
@@ -513,5 +460,4 @@
   </struct>
   <param name="checkpointEvery">1</param>
   <param name="gravity">1.0</param>
-<param name="linearTolerance">1.0e-10</param>
 </StGermainData>
diff -r 9d65571f1046 -r 8e19c7f8a1cf Q2Pm1_input/cookbook/viscous_file.xml
--- a/Q2Pm1_input/cookbook/viscous_file.xml	Sat Sep 24 13:52:39 2011 -0700
+++ b/Q2Pm1_input/cookbook/viscous_file.xml	Tue Sep 27 15:35:06 2011 -0700
@@ -74,32 +74,6 @@
         <param>maxZ</param>
       </list>
     </struct>
-    <struct name="mesh-Q1">
-      <param name="Type">FeMesh</param>
-      <param name="elementType">linear</param>
-    </struct>
-    <struct name="Q1Mesh-generator">
-      <param name="Type">CartesianGenerator</param>
-      <param name="mesh">mesh-Q1</param>
-      <param name="dim">dim</param>
-      <param name="shadowDepth">shadowDepth</param>
-      <param name="regular">False</param>
-      <list name="size">
-        <param>elementResI</param>
-        <param>elementResJ</param>
-        <param>elementResK</param>
-      </list>
-      <list name="minCoord">
-        <param>minX</param>
-        <param>minY</param>
-        <param>minZ</param>
-      </list>
-      <list name="maxCoord">
-        <param>maxX</param>
-        <param>maxY</param>
-        <param>maxZ</param>
-      </list>
-    </struct>
     <struct name="velocity">
       <param name="Type">MeshVariable</param>
       <param name="mesh">mesh-Q2</param>
@@ -138,29 +112,14 @@
       <param name="IC">velocityICs</param>
       <param name="LinkedDofInfo">velocityLinkedDofs</param>
     </struct>
-    <struct name="VelocityMagnitudeField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">Magnitude</param>
-      <param name="FeVariable">VelocityField</param>
-    </struct>
     <struct name="VelocityGradientsField">
       <param name="Type">OperatorFeVariable</param>
       <param name="Operator">Gradient</param>
       <param name="FeVariable">VelocityField</param>
     </struct>
-    <struct name="VelocityGradientsInvariantField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">TensorInvariant</param>
-      <param name="FeVariable">VelocityGradientsField</param>
-    </struct>
     <struct name="StrainRateField">
       <param name="Type">OperatorFeVariable</param>
       <param name="Operator">TensorSymmetricPart</param>
-      <param name="FeVariable">VelocityGradientsField</param>
-    </struct>
-    <struct name="VorticityField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">TensorAntisymmetricPart</param>
       <param name="FeVariable">VelocityGradientsField</param>
     </struct>
     <struct name="StrainRateInvariantField">
@@ -187,22 +146,22 @@
       <param name="DofLayout">pressureDofLayout</param>
       <param name="LinkedDofInfo">pressureLinkedDofs</param>
     </struct>
-    <!-- <struct name="StressField"> -->
-    <!--   <param name="Type">StressField</param> -->
-    <!--   <param name="StrainRateField">StrainRateField</param> -->
-    <!--   <param name="Context">context</param> -->
-    <!--   <param name="ConstitutiveMatrix">constitutiveMatrix</param> -->
-    <!--   <param name="Swarm">picIntegrationPoints</param> -->
-    <!--   <param name="Mesh">mesh-Pm1</param> -->
-    <!--   <param name="IC">stressICs</param> -->
-    <!-- </struct> -->
-    <!-- <struct name="ViscosityField"> -->
-    <!--   <param name="Type">ViscosityField</param> -->
-    <!--   <param name="Context">context</param> -->
-    <!--   <param name="Swarm">picIntegrationPoints</param> -->
-    <!--   <param name="Mesh">mesh-Pm1</param> -->
-    <!--   <param name="ConstitutiveMatrix">constitutiveMatrix</param> -->
-    <!-- </struct> -->
+    <struct name="StressField">
+      <param name="Type">StressField</param>
+      <param name="StrainRateField">StrainRateField</param>
+      <param name="Context">context</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="IC">stressICs</param>
+    </struct>
+    <struct name="ViscosityField">
+      <param name="Type">ViscosityField</param>
+      <param name="Context">context</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+    </struct>
     <struct name="cellLayout">
       <param name="Type">ElementCellLayout</param>
       <param name="Mesh">mesh-Q2</param>
@@ -224,24 +183,17 @@
       <param name="IntegrationPointsSwarm">gaussSwarm</param>
       <param name="MappedSwarm">picIntegrationPoints</param>
     </struct>
-    <struct name="backgroundLayout">
-      <param name="Type">BackgroundParticleLayout</param>
-    </struct>
     <struct name="timeIntegrator">
       <param name="Type">TimeIntegrator</param>
       <param name="order">timeIntegratorOrder</param>
       <param name="simultaneous">f</param>
       <param name="Context">context</param>
     </struct>
-    <struct name="elementCellLayout">
-      <param name="Type">ElementCellLayout</param>
-      <param name="Mesh">mesh-Q2</param>
-    </struct>
     <struct name="weights">
       <param name="Type">PCDVC</param>
-      <param name="resolutionX">10</param>
-      <param name="resolutionY">10</param>
-      <param name="resolutionZ">10</param>
+      <param name="resolutionX">20</param>
+      <param name="resolutionY">20</param>
+      <param name="resolutionZ">20</param>
       <param name="lowerT">0.6</param>
       <param name="upperT">25</param>
       <param name="maxDeletions">3</param>
@@ -253,7 +205,7 @@
     </struct>
     <struct name="picIntegrationPoints">
       <param name="Type">IntegrationPointsSwarm</param>
-      <param name="CellLayout">elementCellLayout</param>
+      <param name="CellLayout">cellLayout</param>
       <param name="ParticleLayout">localLayout</param>
       <param name="FeMesh">mesh-Q2</param>
       <param name="WeightsCalculator">weights</param>
@@ -278,7 +230,7 @@
     </struct>
     <struct name="materialSwarm">
       <param name="Type">MaterialPointsSwarm</param>
-      <param name="CellLayout">elementCellLayout</param>
+      <param name="CellLayout">cellLayout</param>
       <param name="ParticleLayout">materialSwarmParticleLayout</param>
       <param name="FeMesh">mesh-Q2</param>
       <list name="ParticleCommHandlers">
@@ -368,7 +320,6 @@
       <param name="StressTensorMatrix">k_matrix</param>
       <param name="GradientMatrix">g_matrix</param>
       <param name="DivergenceMatrix"></param>
-      <param name="CompressibilityMatrix">c_matrix</param>
       <param name="VelocityVector">solutionVelocity</param>
       <param name="PressureVector">solutionPressure</param>
       <param name="ForceVector">mom_force</param>
@@ -377,12 +328,11 @@
       <param name="nonLinearTolerance">nonLinearTolerance</param>
       <param name="makeConvergenceFile">false</param>
     </struct>
-    <struct name="c_matrix">
-      <param name="Type">StiffnessMatrix</param>
-      <param name="RowVariable">PressureField</param>
-      <param name="ColumnVariable">PressureField</param>
-      <param name="RHS">cont_force</param>
-      <param name="allowZeroElementContributions">True</param>
+    <struct name="buoyancyForceTerm">
+      <param name="Type">BuoyancyForceTerm</param>
+      <param name="ForceVector">mom_force</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="gravity">gravity</param>
     </struct>
     <struct name="background">
       <param name="Type">Everywhere</param>
@@ -414,22 +364,22 @@
       <param name="Type">MaterialViscosity</param>
       <param name="eta0">1.0</param>
     </struct>
-    <!-- <struct name="storeViscosity"> -->
-    <!--   <param name="Type">StoreVisc</param> -->
-    <!--   <param name="MaterialPointsSwarm">materialSwarm</param> -->
-    <!-- </struct> -->
-    <!-- <struct name="storeStress"> -->
-    <!--   <param name="Type">StoreStress</param> -->
-    <!--   <param name="MaterialPointsSwarm">materialSwarm</param> -->
-    <!-- </struct> -->
+    <struct name="storeViscosity">
+      <param name="Type">StoreVisc</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="storeStress">
+      <param name="Type">StoreStress</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
     <struct name="viscous">
       <param name="Type">RheologyMaterial</param>
       <param name="Shape">boxShape</param>
       <param name="density">1.0</param>
       <list name="Rheology">
         <param>backgroundViscosity</param>
-        <!-- <param>storeViscosity</param> -->
-        <!-- <param>storeStress</param> -->
+        <param>storeViscosity</param>
+        <param>storeStress</param>
       </list>
     </struct>
 
@@ -460,9 +410,6 @@
   <param name="buildElementNeighbourTbl">True</param>
   <param name="particlesPerCell">40</param>
   <param name="seed">13</param>
-  <param name="gaussParticlesX">2</param>
-  <param name="gaussParticlesY">2</param>
-  <param name="gaussParticlesZ">2</param>
   <struct name="EulerDeform">
     <list name="systems">
       <struct>
@@ -518,10 +465,7 @@
   </struct>
   <param name="checkpointEvery">1</param>
   <param name="gravity">1.0</param>
-<param name="linearTolerance">1.0e-10</param>
-
-<param name="File1_Name">velocities</param>
-<param name="File1_Dim">0</param>
-<param name="File1_N">102</param>
-
+  <param name="File1_Name">input/cookbook/velocities</param>
+  <param name="File1_Dim">0</param>
+  <param name="File1_N">102</param>
 </StGermainData>
diff -r 9d65571f1046 -r 8e19c7f8a1cf Q2Pm1_input/cookbook/viscous_inflow.xml
--- a/Q2Pm1_input/cookbook/viscous_inflow.xml	Sat Sep 24 13:52:39 2011 -0700
+++ b/Q2Pm1_input/cookbook/viscous_inflow.xml	Tue Sep 27 15:35:06 2011 -0700
@@ -74,32 +74,6 @@
         <param>maxZ</param>
       </list>
     </struct>
-    <struct name="mesh-Q1">
-      <param name="Type">FeMesh</param>
-      <param name="elementType">linear</param>
-    </struct>
-    <struct name="Q1Mesh-generator">
-      <param name="Type">CartesianGenerator</param>
-      <param name="mesh">mesh-Q1</param>
-      <param name="dim">dim</param>
-      <param name="shadowDepth">shadowDepth</param>
-      <param name="regular">False</param>
-      <list name="size">
-        <param>elementResI</param>
-        <param>elementResJ</param>
-        <param>elementResK</param>
-      </list>
-      <list name="minCoord">
-        <param>minX</param>
-        <param>minY</param>
-        <param>minZ</param>
-      </list>
-      <list name="maxCoord">
-        <param>maxX</param>
-        <param>maxY</param>
-        <param>maxZ</param>
-      </list>
-    </struct>
     <struct name="velocity">
       <param name="Type">MeshVariable</param>
       <param name="mesh">mesh-Q2</param>
@@ -138,29 +112,14 @@
       <param name="IC">velocityICs</param>
       <param name="LinkedDofInfo">velocityLinkedDofs</param>
     </struct>
-    <struct name="VelocityMagnitudeField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">Magnitude</param>
-      <param name="FeVariable">VelocityField</param>
-    </struct>
     <struct name="VelocityGradientsField">
       <param name="Type">OperatorFeVariable</param>
       <param name="Operator">Gradient</param>
       <param name="FeVariable">VelocityField</param>
     </struct>
-    <struct name="VelocityGradientsInvariantField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">TensorInvariant</param>
-      <param name="FeVariable">VelocityGradientsField</param>
-    </struct>
     <struct name="StrainRateField">
       <param name="Type">OperatorFeVariable</param>
       <param name="Operator">TensorSymmetricPart</param>
-      <param name="FeVariable">VelocityGradientsField</param>
-    </struct>
-    <struct name="VorticityField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">TensorAntisymmetricPart</param>
       <param name="FeVariable">VelocityGradientsField</param>
     </struct>
     <struct name="StrainRateInvariantField">
@@ -187,22 +146,22 @@
       <param name="DofLayout">pressureDofLayout</param>
       <param name="LinkedDofInfo">pressureLinkedDofs</param>
     </struct>
-    <!-- <struct name="StressField"> -->
-    <!--   <param name="Type">StressField</param> -->
-    <!--   <param name="StrainRateField">StrainRateField</param> -->
-    <!--   <param name="Context">context</param> -->
-    <!--   <param name="ConstitutiveMatrix">constitutiveMatrix</param> -->
-    <!--   <param name="Swarm">picIntegrationPoints</param> -->
-    <!--   <param name="Mesh">mesh-Pm1</param> -->
-    <!--   <param name="IC">stressICs</param> -->
-    <!-- </struct> -->
-    <!-- <struct name="ViscosityField"> -->
-    <!--   <param name="Type">ViscosityField</param> -->
-    <!--   <param name="Context">context</param> -->
-    <!--   <param name="Swarm">picIntegrationPoints</param> -->
-    <!--   <param name="Mesh">mesh-Pm1</param> -->
-    <!--   <param name="ConstitutiveMatrix">constitutiveMatrix</param> -->
-    <!-- </struct> -->
+    <struct name="StressField">
+      <param name="Type">StressField</param>
+      <param name="StrainRateField">StrainRateField</param>
+      <param name="Context">context</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="IC">stressICs</param>
+    </struct>
+    <struct name="ViscosityField">
+      <param name="Type">ViscosityField</param>
+      <param name="Context">context</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+    </struct>
     <struct name="cellLayout">
       <param name="Type">ElementCellLayout</param>
       <param name="Mesh">mesh-Q2</param>
@@ -224,42 +183,35 @@
       <param name="IntegrationPointsSwarm">gaussSwarm</param>
       <param name="MappedSwarm">picIntegrationPoints</param>
     </struct>
-    <struct name="backgroundLayout">
-      <param name="Type">BackgroundParticleLayout</param>
-    </struct>
     <struct name="timeIntegrator">
       <param name="Type">TimeIntegrator</param>
       <param name="order">timeIntegratorOrder</param>
       <param name="simultaneous">f</param>
       <param name="Context">context</param>
     </struct>
-    <struct name="elementCellLayout">
-      <param name="Type">ElementCellLayout</param>
-      <param name="Mesh">mesh-Q2</param>
-    </struct>
     <struct name="weights">
       <param name="Type">PCDVC</param>
-      <param name="resolutionX">10</param>
-      <param name="resolutionY">10</param>
-      <param name="resolutionZ">10</param>
+      <param name="resolutionX">20</param>
+      <param name="resolutionY">20</param>
+      <param name="resolutionZ">20</param>
       <param name="lowerT">0.6</param>
       <param name="upperT">25</param>
       <param name="maxDeletions">3</param>
       <param name="maxSplits">3</param>
       <param name="MaterialPointsSwarm">materialSwarm</param>
+      <param name="Inflow">True</param>
     </struct>
     <struct name="localLayout">
       <param name="Type">MappedParticleLayout</param>
     </struct>
     <struct name="picIntegrationPoints">
       <param name="Type">IntegrationPointsSwarm</param>
-      <param name="CellLayout">elementCellLayout</param>
+      <param name="CellLayout">cellLayout</param>
       <param name="ParticleLayout">localLayout</param>
       <param name="FeMesh">mesh-Q2</param>
       <param name="WeightsCalculator">weights</param>
       <param name="TimeIntegrator">timeIntegrator</param>
       <param name="IntegrationPointMapper">mapper</param>
-      <param name="Inflow">True</param>
     </struct>
     <struct name="mapper">
       <param name="Type">CoincidentMapper</param>
@@ -279,7 +231,7 @@
     </struct>
     <struct name="materialSwarm">
       <param name="Type">MaterialPointsSwarm</param>
-      <param name="CellLayout">elementCellLayout</param>
+      <param name="CellLayout">cellLayout</param>
       <param name="ParticleLayout">materialSwarmParticleLayout</param>
       <param name="FeMesh">mesh-Q2</param>
       <list name="ParticleCommHandlers">
@@ -369,7 +321,6 @@
       <param name="StressTensorMatrix">k_matrix</param>
       <param name="GradientMatrix">g_matrix</param>
       <param name="DivergenceMatrix"></param>
-      <param name="CompressibilityMatrix">c_matrix</param>
       <param name="VelocityVector">solutionVelocity</param>
       <param name="PressureVector">solutionPressure</param>
       <param name="ForceVector">mom_force</param>
@@ -378,12 +329,11 @@
       <param name="nonLinearTolerance">nonLinearTolerance</param>
       <param name="makeConvergenceFile">false</param>
     </struct>
-    <struct name="c_matrix">
-      <param name="Type">StiffnessMatrix</param>
-      <param name="RowVariable">PressureField</param>
-      <param name="ColumnVariable">PressureField</param>
-      <param name="RHS">cont_force</param>
-      <param name="allowZeroElementContributions">True</param>
+    <struct name="buoyancyForceTerm">
+      <param name="Type">BuoyancyForceTerm</param>
+      <param name="ForceVector">mom_force</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="gravity">gravity</param>
     </struct>
     <struct name="background">
       <param name="Type">Everywhere</param>
@@ -415,22 +365,22 @@
       <param name="Type">MaterialViscosity</param>
       <param name="eta0">1.0</param>
     </struct>
-    <!-- <struct name="storeViscosity"> -->
-    <!--   <param name="Type">StoreVisc</param> -->
-    <!--   <param name="MaterialPointsSwarm">materialSwarm</param> -->
-    <!-- </struct> -->
-    <!-- <struct name="storeStress"> -->
-    <!--   <param name="Type">StoreStress</param> -->
-    <!--   <param name="MaterialPointsSwarm">materialSwarm</param> -->
-    <!-- </struct> -->
+    <struct name="storeViscosity">
+      <param name="Type">StoreVisc</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="storeStress">
+      <param name="Type">StoreStress</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
     <struct name="viscous">
       <param name="Type">RheologyMaterial</param>
       <param name="Shape">boxShape</param>
       <param name="density">1.0</param>
       <list name="Rheology">
         <param>backgroundViscosity</param>
-        <!-- <param>storeViscosity</param> -->
-        <!-- <param>storeStress</param> -->
+        <param>storeViscosity</param>
+        <param>storeStress</param>
       </list>
     </struct>
 
@@ -461,9 +411,6 @@
   <param name="buildElementNeighbourTbl">True</param>
   <param name="particlesPerCell">40</param>
   <param name="seed">13</param>
-  <param name="gaussParticlesX">2</param>
-  <param name="gaussParticlesY">2</param>
-  <param name="gaussParticlesZ">2</param>
   <struct name="EulerDeform">
     <list name="systems">
       <struct>
@@ -492,6 +439,17 @@
       </struct>
       <struct>
         <param name="type">WallVC</param>
+        <param name="wall">right</param>
+        <list name="variables">
+          <struct>
+            <param name="name">vx</param>
+            <param name="type">double</param>
+            <param name="value">0.0</param>
+          </struct>
+        </list>
+      </struct>
+      <struct>
+        <param name="type">WallVC</param>
         <param name="wall">bottom</param>
         <list name="variables">
           <struct>
@@ -510,8 +468,7 @@
   </struct>
   <param name="checkpointEvery">1</param>
   <param name="gravity">1.0</param>
-<param name="linearTolerance">1.0e-10</param>
-<param name="Equation1">step(y-0.1)*step(0.2-y)</param>
-<param name="Equation2">-step(x-0.9)*step(1.1-x)</param>
-<param name="Equation3">step(x-0.9)*step(1.1-x)</param>
+  <param name="Equation1">step(y-0.1)*step(0.2-y)</param>
+  <param name="Equation2">-step(x-0.9)*step(1.1-x)</param>
+  <param name="Equation3">step(x-0.9)*step(1.1-x)</param>
 </StGermainData>
diff -r 9d65571f1046 -r 8e19c7f8a1cf Q2Pm1_input/cookbook/viscous_normal_stress.xml
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Q2Pm1_input/cookbook/viscous_normal_stress.xml	Tue Sep 27 15:35:06 2011 -0700
@@ -0,0 +1,472 @@
+<?xml version="1.0"?>
+<StGermainData xmlns="http://www.vpac.org/StGermain/XML_IO_Handler/Jun2003">
+  <import>
+    <toolbox>Underworld</toolbox>
+  </import>
+  <plugins>
+    <struct>
+      <param name="Type">Underworld_EulerDeform</param>
+      <param name="Context">context</param>
+    </struct>
+    <struct>
+      <param name="Type">Underworld_VTKOutput</param>
+      <param name="Context">context</param>
+    </struct>
+    <struct>
+      <param name="Type">StgFEM_StandardConditionFunctions</param>
+      <param name="Context">context</param>
+    </struct>
+  </plugins>
+  <struct name="components">
+    <struct name="context">
+      <param name="Type">UnderworldContext</param>
+    </struct>
+    <struct name="mesh-Q2">
+      <param name="Type">FeMesh</param>
+      <param name="elementType">quadratic</param>
+    </struct>
+    <struct name="Q2Mesh-generator">
+      <param name="Type">C2Generator</param>
+      <param name="mesh">mesh-Q2</param>
+      <param name="dim">dim</param>
+      <param name="shadowDepth">shadowDepth</param>
+      <param name="regular">False</param>
+      <list name="size">
+        <param>elementResI</param>
+        <param>elementResJ</param>
+        <param>elementResK</param>
+      </list>
+      <list name="minCoord">
+        <param>minX</param>
+        <param>minY</param>
+        <param>minZ</param>
+      </list>
+      <list name="maxCoord">
+        <param>maxX</param>
+        <param>maxY</param>
+        <param>maxZ</param>
+      </list>
+    </struct>
+    <struct name="mesh-Pm1">
+      <param name="Type">FeMesh</param>
+      <param name="elementType">linear-inner</param>
+    </struct>
+    <struct name="Pm1Mesh-generator">
+      <param name="Type">Inner2DGenerator</param>
+      <param name="mesh">mesh-Pm1</param>
+      <param name="elementMesh">mesh-Q2</param>
+      <param name="dim">dim</param>
+      <param name="shadowDepth">shadowDepth</param>
+      <param name="regular">False</param>
+      <list name="size">
+        <param>elementResI</param>
+        <param>elementResJ</param>
+        <param>elementResK</param>
+      </list>
+      <list name="minCoord">
+        <param>minX</param>
+        <param>minY</param>
+        <param>minZ</param>
+      </list>
+      <list name="maxCoord">
+        <param>maxX</param>
+        <param>maxY</param>
+        <param>maxZ</param>
+      </list>
+    </struct>
+    <struct name="velocity">
+      <param name="Type">MeshVariable</param>
+      <param name="mesh">mesh-Q2</param>
+      <param name="Rank">Vector</param>
+      <param name="DataType">Double</param>
+      <param name="VectorComponentCount">dim</param>
+      <list name="names">
+        <param>vx</param>
+        <param>vy</param>
+        <param>vz</param>
+      </list>
+    </struct>
+    <struct name="velocityBCs">
+      <param name="Type">CompositeVC</param>
+      <param name="Data">mesh-Q2</param>
+    </struct>
+    <struct name="velocityICs">
+      <param name="Type">CompositeVC</param>
+      <param name="Data">mesh-Q2</param>
+    </struct>
+    <struct name="velocityDofLayout">
+      <param name="Type">DofLayout</param>
+      <param name="mesh">mesh-Q2</param>
+      <param name="BaseVariableCount">dim</param>
+      <list name="BaseVariables">
+        <param>vx</param>
+        <param>vy</param>
+        <param>vz</param>
+      </list>
+    </struct>
+    <struct name="VelocityField">
+      <param name="Type">FeVariable</param>
+      <param name="FEMesh">mesh-Q2</param>
+      <param name="DofLayout">velocityDofLayout</param>
+      <param name="BC">velocityBCs</param>
+      <param name="IC">velocityICs</param>
+      <param name="LinkedDofInfo">velocityLinkedDofs</param>
+    </struct>
+    <struct name="VelocityGradientsField">
+      <param name="Type">OperatorFeVariable</param>
+      <param name="Operator">Gradient</param>
+      <param name="FeVariable">VelocityField</param>
+    </struct>
+    <struct name="StrainRateField">
+      <param name="Type">OperatorFeVariable</param>
+      <param name="Operator">TensorSymmetricPart</param>
+      <param name="FeVariable">VelocityGradientsField</param>
+    </struct>
+    <struct name="StrainRateInvariantField">
+      <param name="Type">OperatorFeVariable</param>
+      <param name="Operator">SymmetricTensor_Invariant</param>
+      <param name="FeVariable">StrainRateField</param>
+    </struct>
+    <struct name="pressure">
+      <param name="Type">MeshVariable</param>
+      <param name="mesh">mesh-Pm1</param>
+      <param name="Rank">Scalar</param>
+      <param name="DataType">Double</param>
+    </struct>
+    <struct name="pressureDofLayout">
+      <param name="Type">DofLayout</param>
+      <param name="mesh">mesh-Pm1</param>
+      <list name="BaseVariables">
+        <param>pressure</param>
+      </list>
+    </struct>
+    <struct name="PressureField">
+      <param name="Type">FeVariable</param>
+      <param name="FEMesh">mesh-Pm1</param>
+      <param name="DofLayout">pressureDofLayout</param>
+      <param name="LinkedDofInfo">pressureLinkedDofs</param>
+    </struct>
+    <struct name="StressField">
+      <param name="Type">StressField</param>
+      <param name="StrainRateField">StrainRateField</param>
+      <param name="Context">context</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="IC">stressICs</param>
+    </struct>
+    <struct name="ViscosityField">
+      <param name="Type">ViscosityField</param>
+      <param name="Context">context</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+    </struct>
+    <struct name="cellLayout">
+      <param name="Type">ElementCellLayout</param>
+      <param name="Mesh">mesh-Q2</param>
+    </struct>
+    <struct name="particleLayout">
+      <param name="Type">GaussParticleLayout</param>
+      <param name="gaussParticles">3</param>
+    </struct>
+    <struct name="gaussSwarm">
+      <param name="Type">IntegrationPointsSwarm</param>
+      <param name="CellLayout">cellLayout</param>
+      <param name="ParticleLayout">particleLayout</param>
+      <param name="FeMesh">mesh-Q2</param>
+      <param name="TimeIntegrator">timeIntegrator</param>
+      <param name="IntegrationPointMapper">nearestMapper</param>
+    </struct>
+    <struct name="nearestMapper">
+      <param name="Type">NearestNeighborMapper</param>
+      <param name="IntegrationPointsSwarm">gaussSwarm</param>
+      <param name="MappedSwarm">picIntegrationPoints</param>
+    </struct>
+    <struct name="timeIntegrator">
+      <param name="Type">TimeIntegrator</param>
+      <param name="order">timeIntegratorOrder</param>
+      <param name="simultaneous">f</param>
+      <param name="Context">context</param>
+    </struct>
+    <struct name="weights">
+      <param name="Type">PCDVC</param>
+      <param name="resolutionX">20</param>
+      <param name="resolutionY">20</param>
+      <param name="resolutionZ">20</param>
+      <param name="lowerT">0.6</param>
+      <param name="upperT">25</param>
+      <param name="maxDeletions">3</param>
+      <param name="maxSplits">3</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+      <param name="Inflow">True</param>
+    </struct>
+    <struct name="localLayout">
+      <param name="Type">MappedParticleLayout</param>
+    </struct>
+    <struct name="picIntegrationPoints">
+      <param name="Type">IntegrationPointsSwarm</param>
+      <param name="CellLayout">cellLayout</param>
+      <param name="ParticleLayout">localLayout</param>
+      <param name="FeMesh">mesh-Q2</param>
+      <param name="WeightsCalculator">weights</param>
+      <param name="TimeIntegrator">timeIntegrator</param>
+      <param name="IntegrationPointMapper">mapper</param>
+    </struct>
+    <struct name="mapper">
+      <param name="Type">CoincidentMapper</param>
+      <param name="IntegrationPointsSwarm">picIntegrationPoints</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="materialSwarmParticleLayout">
+      <param name="Type">MeshParticleLayout</param>
+      <param name="cellParticleCount">particlesPerCell</param>
+      <param name="mesh">mesh-Q2</param>
+    </struct>
+    <struct name="pMovementHandler">
+      <param name="Type">ParticleMovementHandler</param>
+    </struct>
+    <struct name="pShadowSync">
+      <param name="Type">ParticleShadowSync</param>
+    </struct>
+    <struct name="materialSwarm">
+      <param name="Type">MaterialPointsSwarm</param>
+      <param name="CellLayout">cellLayout</param>
+      <param name="ParticleLayout">materialSwarmParticleLayout</param>
+      <param name="FeMesh">mesh-Q2</param>
+      <list name="ParticleCommHandlers">
+        <param>pMovementHandler</param>
+        <param>pShadowSync</param>
+      </list>
+      <param name="SplittingRoutine">splittingRoutine</param>
+      <param name="RemovalRoutine">removalRoutine</param>
+      <param name="EscapedRoutine">escapedRoutine</param>
+    </struct>
+    <struct name="materialSwarmAdvector">
+      <param name="Type">SwarmAdvector</param>
+      <param name="Swarm">materialSwarm</param>
+      <param name="TimeIntegrator">timeIntegrator</param>
+      <param name="VelocityField">VelocityField</param>
+      <param name="PeriodicBCsManager">periodicBCsManager</param>
+      <param name="allowFallbackToFirstOrder">True</param>
+    </struct>
+    <struct name="solutionVelocity">
+      <param name="Type">SolutionVector</param>
+      <param name="FeVariable">VelocityField</param>
+    </struct>
+    <struct name="solutionPressure">
+      <param name="Type">SolutionVector</param>
+      <param name="FeVariable">PressureField</param>
+    </struct>
+    <struct name="mom_force">
+      <param name="Type">ForceVector</param>
+      <param name="FeVariable">VelocityField</param>
+      <param name="ExtraInfo">context</param>
+    </struct>
+    <struct name="cont_force">
+      <param name="Type">ForceVector</param>
+      <param name="FeVariable">PressureField</param>
+      <param name="ExtraInfo">context</param>
+    </struct>
+    <struct name="k_matrix">
+      <param name="Type">StiffnessMatrix</param>
+      <param name="RowVariable">VelocityField</param>
+      <param name="ColumnVariable">VelocityField</param>
+      <param name="RHS">mom_force</param>
+      <param name="allowZeroElementContributions">False</param>
+    </struct>
+    <struct name="constitutiveMatrix">
+      <param name="Type">ConstitutiveMatrixCartesian</param>
+      <param name="Swarm">gaussSwarm</param>
+      <param name="StiffnessMatrix">k_matrix</param>
+    </struct>
+    <struct name="g_matrix">
+      <param name="Type">StiffnessMatrix</param>
+      <param name="RowVariable">VelocityField</param>
+      <param name="ColumnVariable">PressureField</param>
+      <param name="RHS">mom_force</param>
+      <param name="transposeRHS">cont_force</param>
+      <param name="allowZeroElementContributions">False</param>
+    </struct>
+    <struct name="gradientStiffnessMatrixTerm">
+      <param name="Type">GradientStiffnessMatrixTerm</param>
+      <param name="Swarm">gaussSwarm</param>
+      <param name="StiffnessMatrix">g_matrix</param>
+    </struct>
+    <struct name="preconditioner">
+      <param name="Type">StiffnessMatrix</param>
+      <param name="RowVariable">PressureField</param>
+      <param name="ColumnVariable">PressureField</param>
+      <param name="RHS">cont_force</param>
+      <param name="allowZeroElementContributions">True</param>
+    </struct>
+    <struct name="preconditionerTerm">
+      <param name="Type">UzawaPreconditionerTerm</param>
+      <param name="Swarm">gaussSwarm</param>
+      <param name="StiffnessMatrix">preconditioner</param>
+    </struct>
+    <struct name="uzawa">
+      <param name="Type">Stokes_SLE_UzawaSolver</param>
+      <param name="velocitySolver">matrixSolver</param>
+      <param name="Preconditioner">preconditioner</param>
+      <param name="tolerance">linearTolerance</param>
+      <param name="monitor">false</param>
+      <param name="maxIterations">5000</param>
+      <param name="minIterations">1</param>
+    </struct>
+    <struct name="stokesEqn">
+      <param name="Type">Stokes_SLE</param>
+      <param name="SLE_Solver">uzawa</param>
+      <param name="Context">context</param>
+      <param name="StressTensorMatrix">k_matrix</param>
+      <param name="GradientMatrix">g_matrix</param>
+      <param name="DivergenceMatrix"></param>
+      <param name="VelocityVector">solutionVelocity</param>
+      <param name="PressureVector">solutionPressure</param>
+      <param name="ForceVector">mom_force</param>
+      <param name="ContinuityForceVector">cont_force</param>
+      <param name="nonLinearMaxIterations">nonLinearMaxIterations</param>
+      <param name="nonLinearTolerance">nonLinearTolerance</param>
+      <param name="makeConvergenceFile">false</param>
+    </struct>
+    <struct name="buoyancyForceTerm">
+      <param name="Type">BuoyancyForceTerm</param>
+      <param name="ForceVector">mom_force</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="gravity">gravity</param>
+    </struct>
+    <struct name="background">
+      <param name="Type">Everywhere</param>
+    </struct>
+    <struct name="escapedRoutine">
+      <param name="Type">EscapedRoutine</param>
+      <param name="idealParticleCount">0</param>
+    </struct>
+    <struct name="velocityRemesher">
+      <param name="Type">RegularRemesherCmpt</param>
+      <param name="mesh">mesh-Q2</param>
+      <list name="remeshDims">
+        <param>0</param>
+        <param>1</param>
+        <param>2</param>
+      </list>
+    </struct>
+
+    <struct name="boxShape">
+      <param name="Type">Box</param>
+      <param name="startX">minX</param>
+      <param name="endX">maxX</param>
+      <param name="startY">minY</param>
+      <param name="endY">maxY</param>
+      <param name="startZ">minZ</param>
+      <param name="endZ">maxZ</param>
+    </struct>
+    <struct name="backgroundViscosity">
+      <param name="Type">MaterialViscosity</param>
+      <param name="eta0">1.0</param>
+    </struct>
+    <struct name="storeViscosity">
+      <param name="Type">StoreVisc</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="storeStress">
+      <param name="Type">StoreStress</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="viscous">
+      <param name="Type">RheologyMaterial</param>
+      <param name="Shape">boxShape</param>
+      <param name="density">1.0</param>
+      <list name="Rheology">
+        <param>backgroundViscosity</param>
+        <param>storeViscosity</param>
+        <param>storeStress</param>
+      </list>
+    </struct>
+
+    <struct name="stressBC">
+      <param name="Type">StressBC</param>
+      <param name="ForceVector">mom_force</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="wall">bottom</param>
+      <param name="y_type">double</param>
+      <param name="y_value">0.35</param>
+    </struct>
+  </struct>
+
+  <list name="FieldVariablesToCheckpoint">
+    <param>VelocityField</param>
+    <param>PressureField</param>
+  </list>
+  <param name="timeIntegratorOrder">1</param>
+  <param name="maxTimeSteps">10</param>
+  <param name="outputEvery">1</param>
+  <param name="dumpEvery">1</param>
+  <param name="outputPath">./output</param>
+  <param name="dim">2</param>
+  <param name="shadowDepth">1</param>
+  <param name="minX">0.0f</param>
+  <param name="minY">0.0f</param>
+  <param name="minZ">0.0f</param>
+  <param name="maxX">2.0f</param>
+  <param name="maxY">0.35f</param>
+  <param name="maxZ">0.3f</param>
+  <param name="elementResI">16</param>
+  <param name="elementResJ">8</param>
+  <param name="elementResK">4</param>
+  <param name="allowUnbalancing">True</param>
+  <param name="buildNodeNeighbourTbl">True</param>
+  <param name="buildElementNeighbourTbl">True</param>
+  <param name="particlesPerCell">40</param>
+  <param name="seed">13</param>
+  <struct name="EulerDeform">
+    <list name="systems">
+      <struct>
+        <param name="mesh">mesh-Q2</param>
+        <param name="remesher">velocityRemesher</param>
+        <param name="velocityField">VelocityField</param>
+        <param name="wrapTop">True</param>
+        <param name="staticBottom">True</param>
+      </struct>
+    </list>
+  </struct>
+  <struct name="velocityBCs">
+    <param name="type">CompositeVC</param>
+    <list name="vcList">
+      <struct>
+        <param name="type">WallVC</param>
+        <param name="wall">left</param>
+        <list name="variables">
+          <struct>
+            <param name="name">vx</param>
+            <param name="type">double</param>
+            <param name="value">0.0</param>
+          </struct>
+          <struct>
+            <param name="name">vy</param>
+            <param name="type">double</param>
+            <param name="value">0.0</param>
+          </struct>
+        </list>
+      </struct>
+      <struct>
+        <param name="type">WallVC</param>
+        <param name="wall">right</param>
+        <list name="variables">
+          <struct>
+            <param name="name">vx</param>
+            <param name="type">double</param>
+            <param name="value">1.0</param>
+          </struct>
+          <struct>
+            <param name="name">vy</param>
+            <param name="type">double</param>
+            <param name="value">0.0</param>
+          </struct>
+        </list>
+      </struct>
+    </list>
+  </struct>
+  <param name="checkpointEvery">1</param>
+  <param name="gravity">1.0</param>
+</StGermainData>
diff -r 9d65571f1046 -r 8e19c7f8a1cf Q2Pm1_input/cookbook/viscous_split.xml
--- a/Q2Pm1_input/cookbook/viscous_split.xml	Sat Sep 24 13:52:39 2011 -0700
+++ b/Q2Pm1_input/cookbook/viscous_split.xml	Tue Sep 27 15:35:06 2011 -0700
@@ -74,32 +74,6 @@
         <param>maxZ</param>
       </list>
     </struct>
-    <struct name="mesh-Q1">
-      <param name="Type">FeMesh</param>
-      <param name="elementType">linear</param>
-    </struct>
-    <struct name="Q1Mesh-generator">
-      <param name="Type">CartesianGenerator</param>
-      <param name="mesh">mesh-Q1</param>
-      <param name="dim">dim</param>
-      <param name="shadowDepth">shadowDepth</param>
-      <param name="regular">False</param>
-      <list name="size">
-        <param>elementResI</param>
-        <param>elementResJ</param>
-        <param>elementResK</param>
-      </list>
-      <list name="minCoord">
-        <param>minX</param>
-        <param>minY</param>
-        <param>minZ</param>
-      </list>
-      <list name="maxCoord">
-        <param>maxX</param>
-        <param>maxY</param>
-        <param>maxZ</param>
-      </list>
-    </struct>
     <struct name="velocity">
       <param name="Type">MeshVariable</param>
       <param name="mesh">mesh-Q2</param>
@@ -138,29 +112,14 @@
       <param name="IC">velocityICs</param>
       <param name="LinkedDofInfo">velocityLinkedDofs</param>
     </struct>
-    <struct name="VelocityMagnitudeField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">Magnitude</param>
-      <param name="FeVariable">VelocityField</param>
-    </struct>
     <struct name="VelocityGradientsField">
       <param name="Type">OperatorFeVariable</param>
       <param name="Operator">Gradient</param>
       <param name="FeVariable">VelocityField</param>
     </struct>
-    <struct name="VelocityGradientsInvariantField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">TensorInvariant</param>
-      <param name="FeVariable">VelocityGradientsField</param>
-    </struct>
     <struct name="StrainRateField">
       <param name="Type">OperatorFeVariable</param>
       <param name="Operator">TensorSymmetricPart</param>
-      <param name="FeVariable">VelocityGradientsField</param>
-    </struct>
-    <struct name="VorticityField">
-      <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">TensorAntisymmetricPart</param>
       <param name="FeVariable">VelocityGradientsField</param>
     </struct>
     <struct name="StrainRateInvariantField">
@@ -187,22 +146,22 @@
       <param name="DofLayout">pressureDofLayout</param>
       <param name="LinkedDofInfo">pressureLinkedDofs</param>
     </struct>
-    <!-- <struct name="StressField"> -->
-    <!--   <param name="Type">StressField</param> -->
-    <!--   <param name="StrainRateField">StrainRateField</param> -->
-    <!--   <param name="Context">context</param> -->
-    <!--   <param name="ConstitutiveMatrix">constitutiveMatrix</param> -->
-    <!--   <param name="Swarm">picIntegrationPoints</param> -->
-    <!--   <param name="Mesh">mesh-Pm1</param> -->
-    <!--   <param name="IC">stressICs</param> -->
-    <!-- </struct> -->
-    <!-- <struct name="ViscosityField"> -->
-    <!--   <param name="Type">ViscosityField</param> -->
-    <!--   <param name="Context">context</param> -->
-    <!--   <param name="Swarm">picIntegrationPoints</param> -->
-    <!--   <param name="Mesh">mesh-Pm1</param> -->
-    <!--   <param name="ConstitutiveMatrix">constitutiveMatrix</param> -->
-    <!-- </struct> -->
+    <struct name="StressField">
+      <param name="Type">StressField</param>
+      <param name="StrainRateField">StrainRateField</param>
+      <param name="Context">context</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="IC">stressICs</param>
+    </struct>
+    <struct name="ViscosityField">
+      <param name="Type">ViscosityField</param>
+      <param name="Context">context</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="Mesh">mesh-Q2</param>
+      <param name="ConstitutiveMatrix">constitutiveMatrix</param>
+    </struct>
     <struct name="cellLayout">
       <param name="Type">ElementCellLayout</param>
       <param name="Mesh">mesh-Q2</param>
@@ -224,24 +183,17 @@
       <param name="IntegrationPointsSwarm">gaussSwarm</param>
       <param name="MappedSwarm">picIntegrationPoints</param>
     </struct>
-    <struct name="backgroundLayout">
-      <param name="Type">BackgroundParticleLayout</param>
-    </struct>
     <struct name="timeIntegrator">
       <param name="Type">TimeIntegrator</param>
       <param name="order">timeIntegratorOrder</param>
       <param name="simultaneous">f</param>
       <param name="Context">context</param>
     </struct>
-    <struct name="elementCellLayout">
-      <param name="Type">ElementCellLayout</param>
-      <param name="Mesh">mesh-Q2</param>
-    </struct>
     <struct name="weights">
       <param name="Type">PCDVC</param>
-      <param name="resolutionX">10</param>
-      <param name="resolutionY">10</param>
-      <param name="resolutionZ">10</param>
+      <param name="resolutionX">20</param>
+      <param name="resolutionY">20</param>
+      <param name="resolutionZ">20</param>
       <param name="lowerT">0.6</param>
       <param name="upperT">25</param>
       <param name="maxDeletions">3</param>
@@ -253,7 +205,7 @@
     </struct>
     <struct name="picIntegrationPoints">
       <param name="Type">IntegrationPointsSwarm</param>
-      <param name="CellLayout">elementCellLayout</param>
+      <param name="CellLayout">cellLayout</param>
       <param name="ParticleLayout">localLayout</param>
       <param name="FeMesh">mesh-Q2</param>
       <param name="WeightsCalculator">weights</param>
@@ -278,7 +230,7 @@
     </struct>
     <struct name="materialSwarm">
       <param name="Type">MaterialPointsSwarm</param>
-      <param name="CellLayout">elementCellLayout</param>
+      <param name="CellLayout">cellLayout</param>
       <param name="ParticleLayout">materialSwarmParticleLayout</param>
       <param name="FeMesh">mesh-Q2</param>
       <list name="ParticleCommHandlers">
@@ -368,7 +320,6 @@
       <param name="StressTensorMatrix">k_matrix</param>
       <param name="GradientMatrix">g_matrix</param>
       <param name="DivergenceMatrix"></param>
-      <param name="CompressibilityMatrix">c_matrix</param>
       <param name="VelocityVector">solutionVelocity</param>
       <param name="PressureVector">solutionPressure</param>
       <param name="ForceVector">mom_force</param>
@@ -377,13 +328,12 @@
       <param name="nonLinearTolerance">nonLinearTolerance</param>
       <param name="makeConvergenceFile">false</param>
     </struct>
-    <!-- <struct name="c_matrix"> -->
-    <!--   <param name="Type">StiffnessMatrix</param> -->
-    <!--   <param name="RowVariable">PressureField</param> -->
-    <!--   <param name="ColumnVariable">PressureField</param> -->
-    <!--   <param name="RHS">cont_force</param> -->
-    <!--   <param name="allowZeroElementContributions">True</param> -->
-    <!-- </struct> -->
+    <struct name="buoyancyForceTerm">
+      <param name="Type">BuoyancyForceTerm</param>
+      <param name="ForceVector">mom_force</param>
+      <param name="Swarm">picIntegrationPoints</param>
+      <param name="gravity">gravity</param>
+    </struct>
     <struct name="background">
       <param name="Type">Everywhere</param>
     </struct>
@@ -414,22 +364,22 @@
       <param name="Type">MaterialViscosity</param>
       <param name="eta0">1.0</param>
     </struct>
-    <!-- <struct name="storeViscosity"> -->
-    <!--   <param name="Type">StoreVisc</param> -->
-    <!--   <param name="MaterialPointsSwarm">materialSwarm</param> -->
-    <!-- </struct> -->
-    <!-- <struct name="storeStress"> -->
-    <!--   <param name="Type">StoreStress</param> -->
-    <!--   <param name="MaterialPointsSwarm">materialSwarm</param> -->
-    <!-- </struct> -->
+    <struct name="storeViscosity">
+      <param name="Type">StoreVisc</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="storeStress">
+      <param name="Type">StoreStress</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
     <struct name="viscous">
       <param name="Type">RheologyMaterial</param>
       <param name="Shape">boxShape</param>
       <param name="density">1.0</param>
       <list name="Rheology">
         <param>backgroundViscosity</param>
-        <!-- <param>storeViscosity</param> -->
-        <!-- <param>storeStress</param> -->
+        <param>storeViscosity</param>
+        <param>storeStress</param>
       </list>
     </struct>
 



More information about the CIG-COMMITS mailing list