20 #include "libmesh/meshfree_solution_transfer.h"    22 #include "libmesh/mesh.h"    23 #include "libmesh/system.h"    24 #include "libmesh/numeric_vector.h"    25 #include "libmesh/threads.h"    26 #include "libmesh/meshfree_interpolation.h"    27 #include "libmesh/function_base.h"    28 #include "libmesh/node.h"    29 #include "libmesh/variable.h"    45   libmesh_experimental();
    55     (from_mesh.
comm(), 4, 2);
    57   std::vector<Point>  & src_pts  (idi.get_source_points());
    58   std::vector<Number> & src_vals (idi.get_source_vals());
    60   std::vector<std::string> field_vars;
    61   field_vars.push_back(from_var.
name());
    66   for (
const auto & node : from_mesh.local_node_ptr_range())
    68       src_pts.push_back(*node);
    69       src_vals.push_back((*from_sys->
solution)(node->dof_number(from_sys->
number(),from_var.
number(),0)));
    73   idi.prepare_for_use();
 This is the EquationSystems class. 
Inverse distance interpolation. 
const EquationSystems & get_equation_systems() const
const Parallel::Communicator & comm() const
The libMesh namespace provides an interface to certain functionality in the library. 
This is the MeshBase class. 
void project_solution(FunctionBase< Number > *f, FunctionBase< Gradient > *g=nullptr) const
Projects arbitrary functions onto the current solution. 
unsigned int number() const
This class defines the notion of a variable in the system. 
Manages consistently variables, degrees of freedom, and coefficient vectors. 
std::unique_ptr< NumericVector< Number > > solution
Data structure to hold solution values. 
virtual void transfer(const Variable &from_var, const Variable &to_var) override
Transfer the values of a variable to another. 
void set_field_variables(std::vector< std::string > names)
Defines the field variable(s) we are responsible for, and importantly their assumed ordering...
const MeshBase & get_mesh() const
const std::string & name() const
unsigned int number() const