diff --git a/include/aspect/material_model/utilities.h b/include/aspect/material_model/utilities.h index c9923e61ee3..4a50205a694 100644 --- a/include/aspect/material_model/utilities.h +++ b/include/aspect/material_model/utilities.h @@ -570,8 +570,9 @@ namespace aspect /** * Percentage of material that has already undergone the phase - * transition to the higher-pressure material (this is done - * individually for each transition and summed up in the end) + * transition to the higher-pressure material. For this class + * this function only returns 1.0 or 0.0, depending on whether + * the selected phase transition has been crossed or not. */ double compute_value (const PhaseFunctionInputs &in) const; @@ -579,7 +580,7 @@ namespace aspect * Return the derivative of the phase function with respect to * pressure. */ - double compute_derivative (const PhaseFunctionInputs &in) const; + double compute_derivative () const; /** * Return the total number of phase transitions. diff --git a/include/aspect/material_model/visco_plastic.h b/include/aspect/material_model/visco_plastic.h index 7f4ec6dc055..75914d27b7c 100644 --- a/include/aspect/material_model/visco_plastic.h +++ b/include/aspect/material_model/visco_plastic.h @@ -273,7 +273,7 @@ namespace aspect bool use_dominant_phase_for_viscosity; /** - * Object that handles phase transitions. + * Object that handles discrete phase transitions for the rheology if requested by the variable use_dominant_phase_for_viscosity. */ MaterialUtilities::PhaseFunctionDiscrete phase_function_discrete; diff --git a/include/aspect/structured_data.h b/include/aspect/structured_data.h index 97455b6fa46..341a871187a 100644 --- a/include/aspect/structured_data.h +++ b/include/aspect/structured_data.h @@ -249,12 +249,13 @@ namespace aspect double get_maximum_component_value(const unsigned int component) const; /** - Retrieve the number of table points for a given dimension. - Equivalent to calling get_interpolation_point_coordinates().size(). - @param dimension The index of the dimension for which to get the number of table points. - @return The number of points along the specified dimension. - */ - unsigned get_number_of_coordinates(const unsigned int dimension) const; + * Retrieve the number of table points for a given dimension. + * Equivalent to calling get_interpolation_point_coordinates().size(). + * + * @param dimension The index of the dimension for which to get the number of table points. + * @return The number of points along the specified dimension. + */ + unsigned int get_number_of_coordinates(const unsigned int dimension) const; private: /** diff --git a/source/material_model/utilities.cc b/source/material_model/utilities.cc index da5e0b581f4..03da889b0b9 100644 --- a/source/material_model/utilities.cc +++ b/source/material_model/utilities.cc @@ -1181,7 +1181,7 @@ namespace aspect material_lookup[i]->load_file(data_directory+material_file_names[i], this->get_mpi_communicator()); - assert(material_lookup[i]->has_equidistant_coordinates()); + Assert(material_lookup[i]->has_equidistant_coordinates(), ExcMessage("The loaded lookup tables do not use equidistant coordinates. The class 'PhaseFunctionDiscrete' cannot currently handle non equidistant coordinates.")); minimum_temperature[i] = material_lookup[i]->get_interpolation_point_coordinates(0).front(); maximum_temperature[i] = material_lookup[i]->get_interpolation_point_coordinates(0).back(); @@ -1254,7 +1254,7 @@ namespace aspect template double - PhaseFunctionDiscrete::compute_derivative (const PhaseFunctionInputs &in) const + PhaseFunctionDiscrete::compute_derivative () const { // make sure the phase derivative of this phase function is not asked for. AssertThrow(false, ExcNotImplemented()); @@ -1348,7 +1348,7 @@ namespace aspect "The file names of the material data (material " "data is assumed to be in order with the ordering " "of the compositional fields). Note that there are " - "three options on how many files need to be listed " + "two options on how many files need to be listed " "here: 1. If only one file is provided, it is used " "for the whole model domain, and compositional fields " "are ignored. 2. If there is one more file name than the "