Skip to content

Commit

Permalink
Merge pull request #1884 from HarryRLevinson/solcx_particles_fixed
Browse files Browse the repository at this point in the history
Fixed bug preventing particles from working in Solcx benchmark
  • Loading branch information
bangerth committed Aug 12, 2017
2 parents d707d9c + df5f710 commit d68a5ee
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 14 deletions.
26 changes: 12 additions & 14 deletions benchmarks/solcx/compositional_fields/solcx_compositional_fields.h
Expand Up @@ -15,21 +15,19 @@ namespace aspect
class SolCxCompositionalMaterial : public SolCxMaterial<dim>
{
public:
double density(const double temperature,
const double pressure,
const std::vector<double> &composition,
const Point <dim> &position) const
virtual void evaluate(const MaterialModel::MaterialModelInputs<dim> &in,
MaterialModel::MaterialModelOutputs<dim> &out) const
{
return composition[0];
}

double viscosity(const double temperature,
const double pressure,
const std::vector<double> &composition,
const SymmetricTensor<2, dim> &strain_rate,
const Point <dim> &position) const
{
return composition[1];
for (unsigned int i=0; i < in.position.size(); ++i)
{
const Point<dim> &pos = in.position[i];
out.densities[i] = in.composition[i][0];
out.viscosities[i] = in.composition[i][1];
out.compressibilities[i] = 0;
out.specific_heat[i] = 0;
out.thermal_expansion_coefficients[i] = 0;
out.thermal_conductivities[i] = 0.0;
}
}
};
}
Expand Down
6 changes: 6 additions & 0 deletions benchmarks/solcx/compositional_fields/solcx_particles.prm
Expand Up @@ -76,6 +76,12 @@ subsection Compositional fields
set Number of fields = 2
set Names of fields = density_comp, viscosity_comp
set Compositional field methods = particles, particles

# In the source code, we assumed that density is being carried
# on compositional field 1 (at index 0) and viscosity is being
# carried on compositional field 2 (at index 1). If this order
# is changed, then the evaluate() function in solcx_compositional_fields.h
# must also be changed.
set Mapped particle properties = density_comp:function[0], viscosity_comp:function[1]
end

Expand Down

0 comments on commit d68a5ee

Please sign in to comment.