[cig-commits] [commit] master: Use introspection in places where block incices had been hard-coded. (5d3ebc0)

cig_noreply at geodynamics.org cig_noreply at geodynamics.org
Mon May 19 20:13:49 PDT 2014


Repository : https://github.com/geodynamics/aspect

On branch  : master
Link       : https://github.com/geodynamics/aspect/compare/76d4275352ef2cae5de9a073acd1c03a92c2670c...4f3d06fd1f3754419813db37ec9ef7f0f6f3cb15

>---------------------------------------------------------------

commit 5d3ebc0cc99fdcaaa7e29ae639d8a6d754c617b0
Author: Jonathan Perry-Houts <jperryh2 at uoregon.edu>
Date:   Wed May 14 18:55:49 2014 -0700

    Use introspection in places where block incices had been hard-coded.


>---------------------------------------------------------------

5d3ebc0cc99fdcaaa7e29ae639d8a6d754c617b0
 source/simulator/helper_functions.cc   | 8 ++++----
 source/simulator/initial_conditions.cc | 4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/source/simulator/helper_functions.cc b/source/simulator/helper_functions.cc
index 3a2859a..022d7ce 100644
--- a/source/simulator/helper_functions.cc
+++ b/source/simulator/helper_functions.cc
@@ -635,7 +635,7 @@ namespace aspect
     distributed_vector = vector;
 
     if (parameters.use_locally_conservative_discretization == false)
-      distributed_vector.block(1).add(pressure_adjustment);
+      distributed_vector.block(introspection.block_indices.pressure).add(pressure_adjustment);
     else
       {
         // this case is a bit more complicated: if the condition above is false
@@ -747,10 +747,10 @@ namespace aspect
 
     if (do_pressure_rhs_compatibility_modification)
       {
-        const double mean       = vector.block(1).mean_value();
-        const double correction = -mean*vector.block(1).size()/global_volume;
+        const double mean       = vector.block(introspection.block_indices.pressure).mean_value();
+        const double correction = -mean*vector.block(introspection.block_indices.pressure).size()/global_volume;
 
-        vector.block(1).add(correction, pressure_shape_function_integrals.block(1));
+        vector.block(introspection.block_indices.pressure).add(correction, pressure_shape_function_integrals.block(introspection.block_indices.pressure));
       }
   }
 
diff --git a/source/simulator/initial_conditions.cc b/source/simulator/initial_conditions.cc
index c6aaa5f..b4a4e51 100644
--- a/source/simulator/initial_conditions.cc
+++ b/source/simulator/initial_conditions.cc
@@ -214,7 +214,7 @@ namespace aspect
         // we may have hanging nodes, so apply constraints
         constraints.distribute (system_tmp);
 
-        old_solution.block(1) = system_tmp.block(1);
+        old_solution.block(introspection.block_indices.pressure) = system_tmp.block(introspection.block_indices.pressure);
       }
     else
       {
@@ -300,7 +300,7 @@ namespace aspect
               cell->set_dof_values (local_projection, system_tmp);
             }
 
-        old_solution.block(1) = system_tmp.block(1);
+        old_solution.block(introspection.block_indices.pressure) = system_tmp.block(introspection.block_indices.pressure);
       }
 
     // normalize the pressure in such a way that the surface pressure



More information about the CIG-COMMITS mailing list