Skip to content

Commit 5bb0cba

Browse files
committed
comments
1 parent 9f37b00 commit 5bb0cba

File tree

1 file changed

+21
-4
lines changed

1 file changed

+21
-4
lines changed

include/aspect/mesh_deformation/external_tool_interface.h

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,9 @@ namespace aspect
106106
class ExternalToolInterface : public Interface<dim>, public SimulatorAccess<dim>
107107
{
108108
public:
109+
/**
110+
* Main routine handling the mesh deformation
111+
*/
109112
virtual
110113
void
111114
compute_velocity_constraints_on_boundary(const DoFHandler<dim> &mesh_deformation_dof_handler,
@@ -184,10 +187,15 @@ namespace aspect
184187
LinearAlgebra::Vector
185188
interpolate_external_velocities_to_surface_support_points (const std::vector<Tensor<1,dim>> &velocities) const;
186189

187-
protected:
188-
190+
/**
191+
* The list of evaluation points owned by the current process. These are the points where the
192+
* external tool will receive the ASPECT solution values and return the updated velocities.
193+
*/
189194
std::vector<Point<dim>> evaluation_points;
190195

196+
/**
197+
* deal.II RemotePointEvaluation object used to do point evaluation in the evaluation points.
198+
*/
191199
std::unique_ptr<Utilities::MPI::RemotePointEvaluation<dim, dim>> remote_point_evaluator;
192200

193201
/**
@@ -201,10 +209,19 @@ namespace aspect
201209
};
202210

203211
/**
204-
* A vector to store a map between Dof indices and evaluation points
212+
* A vector to store a map between Dof indices and evaluation points.
213+
*
214+
* The map will contain an entry for each DoF on the surface of the ASPECT mesh and contains
215+
* the index of the evaluation point that is closest to the DoF. As each support point has
216+
* several components (x,y,z velocity), the map contains one entry for each component.
217+
*
218+
* In a parallel computation, this map only contains entries for evaluation points owned by the
219+
* current process. Note that the DoF indices are not necessarily locally owned.
220+
*
221+
* This map is used in interpolate_external_velocities_to_surface_support_points() to copy
222+
* external velocities to each surface DoF from the closest evaluation point.
205223
*/
206224
std::vector<dof_to_eval_point_data> map_dof_to_eval_point;
207-
208225
};
209226
}
210227
}

0 commit comments

Comments
 (0)