coefficients.hpp functional mfem/fem/gridfunc.hpp mfem/fem/coefficient.hpp mfem/fem/eltrans.hpp mfem/fem/intrules.hpp mfem/linalg/vector.hpp serif/mapping/domain_mapper.hpp serif/mapping/evaluator.hpp src/lib/serif/mapping/coefficients.cpp serif::mapping::PhysicalPositionFunctionCoefficient serif serif::mapping #pragmaonce #include<functional> #include"mfem/fem/gridfunc.hpp" #include"mfem/fem/coefficient.hpp" #include"mfem/fem/eltrans.hpp" #include"mfem/fem/intrules.hpp" #include"mfem/linalg/vector.hpp" #include"serif/mapping/domain_mapper.hpp" #include"serif/mapping/evaluator.hpp" namespaceserif::mapping{ classPhysicalPositionFunctionCoefficient:publicmfem::Coefficient{ public: usingFunc=std::function<double(constmfem::Vector&x)>; PhysicalPositionFunctionCoefficient( constDomainMapper&mapper, constmfem::GridFunction&displacement, constmfem::GridFunction&compactification_coordinate, Funcfunc ); doubleEval( mfem::ElementTransformation&transformation, constmfem::IntegrationPoint&ip )override; private: Funcm_f; GridFunctionMappingEvaluatorm_mapping; }; }