https://mooseframework.inl.gov
MultiApplibMeshToMFEMShapeEvaluationTransfer.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #ifdef MOOSE_MFEM_ENABLED
11 
12 #pragma once
13 
14 #include "MFEMNodalProjector.h"
15 #include "MFEMMultiAppTransfer.h"
16 #include "MFEMProblem.h"
17 
23 {
24 public:
27 
28 protected:
31 
33  virtual void transferVariables(bool is_target_local) override;
34 
36  void interpolatelibMeshVariable(std::map<processor_id_type, std::vector<Point>> & outgoing_points,
37  const unsigned int var_index,
38  mfem::Vector & interp_vals);
39 
41  virtual MFEMProblem & getActiveToProblem() override;
42 };
43 
44 #endif
Virtual base class for MultiApp transfers to and/or from MFEMProblems.
Auxiliary class to extract locations of nodes in MFEM GridFunctions and project values defined at the...
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
uint8_t processor_id_type
MFEMNodalProjector _mfem_projector
Object to extract node positions and perform projections on MFEM GridFunctions.
virtual MFEMProblem & getActiveToProblem() override
Set current MFEM problem to fetch destination variables from.
void interpolatelibMeshVariable(std::map< processor_id_type, std::vector< Point >> &outgoing_points, const unsigned int var_index, mfem::Vector &interp_vals)
Interpolate libMesh variable corresponding to var_index at target points for DoF evaluation.
virtual void transferVariables(bool is_target_local) override
Transfer all variables from active source problem to active destination problem.
MultiApp transfer from libMesh to MFEM variables, performed via evaluation of shape functions...