[cig-commits] commit 1999 by buerg to /var/svn/dealii/aspect
dealii.demon at gmail.com
dealii.demon at gmail.com
Thu Oct 31 08:30:03 PDT 2013
Revision 1999
Make compressible case work.
U trunk/aspire/include/aspect/material_model/interface.h
U trunk/aspire/source/material_model/interface.cc
U trunk/aspire/source/simulator/assembly.cc
http://www.dealii.org/websvn/revision.php?repname=Aspect+Repository&path=%2F&rev=1999&peg=1999
Diff:
Modified: trunk/aspire/include/aspect/material_model/interface.h
===================================================================
--- trunk/aspire/include/aspect/material_model/interface.h 2013-10-30 16:12:59 UTC (rev 1998)
+++ trunk/aspire/include/aspect/material_model/interface.h 2013-10-31 15:29:09 UTC (rev 1999)
@@ -570,6 +570,11 @@
* Compressibility at the given positions.
*/
std::vector<double> compressibilities;
+ /**
+ * Changes in density with respect to temperature and
+ * composition at the given points.
+ */
+ std::vector<std::vector<double> > density_changes;
};
/**
Modified: trunk/aspire/source/material_model/interface.cc
===================================================================
--- trunk/aspire/source/material_model/interface.cc 2013-10-30 16:12:59 UTC (rev 1998)
+++ trunk/aspire/source/material_model/interface.cc 2013-10-31 15:29:09 UTC (rev 1999)
@@ -338,9 +338,13 @@
specific_heat.resize (n_points);
thermal_conductivities.resize (n_points);
compositional_sources.resize (n_points);
+ density_changes.resize (n_points);
for (unsigned int q = 0; q < n_points; ++q)
+ {
compositional_sources[q].resize (n_comp);
+ density_changes[q].resize (n_comp + 1);
+ }
thermal_sources.resize (n_points);
compressibilities.resize (n_points);
Modified: trunk/aspire/source/simulator/assembly.cc
===================================================================
--- trunk/aspire/source/simulator/assembly.cc 2013-10-30 16:12:59 UTC (rev 1998)
+++ trunk/aspire/source/simulator/assembly.cc 2013-10-31 15:29:09 UTC (rev 1999)
@@ -972,13 +972,12 @@
const double eta = scratch.material_model_outputs.viscosities[q];
const double density = scratch.material_model_outputs.densities[q];
- const Tensor<1,dim> gravity = gravity_model->gravity_vector (scratch.fe_values_velocity.quadrature_point (q));
- double right_hand_side = (scratch.velocity_values[q] * scratch.temperature_gradients[q]) / scratch.temperature_values[q];
+ double right_hand_side = scratch.material_model_outputs.density_changes[q][0] * (scratch.velocity_values[q] * scratch.temperature_gradients[q]);
-// for (unsigned int n = 0; n < parameters.n_compositional_fields; ++n)
-// right_hand_side += (scratch.velocity_values[q] * scratch.composition_gradients[n][q]) / scratch.composition_values[n][q];
+ for (unsigned int n = 0; n < parameters.n_compositional_fields; ++n)
+ right_hand_side += scratch.material_model_outputs.density_changes[q][n + 1] * (scratch.velocity_values[q] * scratch.composition_gradients[n][q]);
- right_hand_side *= scratch.fe_values_velocity.JxW (q) * (axisymmetric_terms ? scratch.fe_values_velocity.quadrature_point (q) (0) : 1);
+ right_hand_side *= -1.0 * scratch.fe_values_velocity.JxW (q) * (axisymmetric_terms ? scratch.fe_values_velocity.quadrature_point (q) (0) : 1) / density;
for (unsigned int i=0; i<dofs_per_cell; ++i)
{
@@ -1169,7 +1168,7 @@
const double c_P = scratch.material_model_outputs.specific_heat[q];
const double lambda = scratch.material_model_outputs.thermal_conductivities[q];
const double old_value = scratch.old_temperature_values[q];
- const double rho = 0.0*scratch.material_model_outputs.densities[q];
+ const double rho = scratch.material_model_outputs.densities[q];
const Tensor<1, dim> current_u = scratch.current_velocity_values[q];
for (unsigned int i = 0; i < dofs_per_cell; ++i)
@@ -1237,7 +1236,7 @@
scratch.phi_field[i] = scratch.fe_values_advection.shape_value (i, q);
}
- const double rho = 0.0*scratch.material_model_outputs.densities[q];
+ const double rho = scratch.material_model_outputs.densities[q];
const Tensor<1, dim> current_u = scratch.current_velocity_values[q];
for (unsigned int c = 0; c < parameters.n_compositional_fields; ++c)
More information about the CIG-COMMITS
mailing list