[cig-commits] commit 1932 by heister to /var/svn/dealii/aspect
dealii.demon at gmail.com
dealii.demon at gmail.com
Wed Oct 2 08:27:33 PDT 2013
Revision 1932
remove repeated calls to is_compressible() in the inner most loops
U trunk/aspect/source/simulator/assembly.cc
http://www.dealii.org/websvn/revision.php?repname=Aspect+Repository&path=%2F&rev=1932&peg=1932
Diff:
Modified: trunk/aspect/source/simulator/assembly.cc
===================================================================
--- trunk/aspect/source/simulator/assembly.cc 2013-10-01 21:24:41 UTC (rev 1931)
+++ trunk/aspect/source/simulator/assembly.cc 2013-10-02 15:26:58 UTC (rev 1932)
@@ -841,13 +841,14 @@
{
const unsigned int dofs_per_cell = scratch.finite_element_values.get_fe().dofs_per_cell;
const unsigned int n_q_points = scratch.finite_element_values.n_quadrature_points;
+ const bool is_compressible = material_model->is_compressible();
scratch.finite_element_values.reinit (cell);
if (rebuild_stokes_matrix)
data.local_matrix = 0;
data.local_rhs = 0;
- if (material_model->is_compressible())
+ if (is_compressible)
data.local_pressure_shape_function_integrals = 0;
// we only need the strain rates for the viscosity,
@@ -885,7 +886,7 @@
gravity = gravity_model->gravity_vector (scratch.finite_element_values.quadrature_point(q));
const double compressibility
- = (material_model->is_compressible()
+ = (is_compressible
?
scratch.material_model_outputs.compressibilities[q]
:
@@ -896,7 +897,7 @@
for (unsigned int i=0; i<dofs_per_cell; ++i)
for (unsigned int j=0; j<dofs_per_cell; ++j)
data.local_matrix(i,j) += ( eta * 2.0 * (scratch.grads_phi_u[i] * scratch.grads_phi_u[j])
- - (material_model->is_compressible()
+ - (is_compressible
?
eta * 2.0/3.0 * (scratch.div_phi_u[i] * scratch.div_phi_u[j])
:
@@ -910,7 +911,7 @@
for (unsigned int i=0; i<dofs_per_cell; ++i)
data.local_rhs(i) += (
(density * gravity * scratch.phi_u[i])
- + (material_model->is_compressible()
+ + (is_compressible
?
(pressure_scaling *
compressibility * density *
@@ -920,7 +921,7 @@
0)
)
* scratch.finite_element_values.JxW(q);
- if (material_model->is_compressible())
+ if (is_compressible)
for (unsigned int i=0; i<dofs_per_cell; ++i)
data.local_pressure_shape_function_integrals(i) += scratch.phi_p[i] * scratch.finite_element_values.JxW(q);
}
@@ -1081,7 +1082,8 @@
const double alpha = material_model_outputs.thermal_expansion_coefficients[q];
const double density = material_model_outputs.densities[q];
const double viscosity = material_model_outputs.viscosities[q];
- const double compressibility = (material_model->is_compressible()
+ const bool is_compressible = material_model->is_compressible();
+ const double compressibility = (is_compressible
?
material_model_outputs.compressibilities[q]
:
@@ -1112,7 +1114,7 @@
2 * viscosity *
current_strain_rate * current_strain_rate
-
- (material_model->is_compressible()
+ (is_compressible
?
2./3.*viscosity*std::pow(compressibility * density * (current_u * gravity),
2)
@@ -1152,7 +1154,7 @@
const unsigned int n_q_points = scratch.finite_element_values.n_quadrature_points;
const unsigned int solution_component
- = (temperature_or_composition.is_temperature()
+ = (temperature_or_composition.is_temperature()
?
introspection.component_indices.temperature
:
More information about the CIG-COMMITS
mailing list