inputs.cpp serif/backend/mfem/geometry/deformation/inputs.hpp serif serif::geometry serif::geometry::deformation serif::geometry::deformation::backend serif::geometry::deformation::backend::mfem #include"serif/backend/mfem/geometry/deformation/inputs.hpp" namespaceserif::geometry::deformation::backend::mfem{ namespaceshared=::serif::backend::mfem::shared; SurfaceDiscretizationTracking::SnapshotSurfaceDiscretizationTracking::capture(constSurfaceDiscretization&input)const{ return{.mesh=shared::mesh_snapshot(input.scalar_space.GetMesh(),false,false),.space=shared::space_snapshot(input.scalar_space),.surface_attribute=input.surface_attribute}; } boolSurfaceDiscretizationTracking::matches(constSnapshot&snapshot,constSurfaceDiscretization&input)const{ returnsnapshot.space==shared::space_snapshot(input.scalar_space)&&snapshot.surface_attribute==input.surface_attribute&&shared::mesh_matches(snapshot.mesh,input.scalar_space.GetMesh()); } ReferenceDiscretizationTracking::SnapshotReferenceDiscretizationTracking::capture(constReferenceDiscretization&input)const{ return{ .meshes={shared::mesh_snapshot(input.scalar_space.GetMesh(),false,true),shared::mesh_snapshot(&input.logical_mesh,true,true)}, .spaces={shared::space_snapshot(input.scalar_space),shared::space_snapshot(input.displacement_space)}, .stellar_attributes=input.stellar_attributes, .vacuum_attributes=input.vacuum_attributes, .surface_attribute=input.surface_attribute, .infinity_attribute=input.infinity_attribute}; } boolReferenceDiscretizationTracking::matches(constSnapshot&snapshot,constReferenceDiscretization&input)const{ returnsnapshot.spaces[0]==shared::space_snapshot(input.scalar_space)&&snapshot.spaces[1]==shared::space_snapshot(input.displacement_space)&&snapshot.stellar_attributes==input.stellar_attributes&&snapshot.vacuum_attributes==input.vacuum_attributes&&snapshot.surface_attribute==input.surface_attribute&&snapshot.infinity_attribute==input.infinity_attribute&&shared::mesh_matches(snapshot.meshes[0],input.scalar_space.GetMesh())&&shared::mesh_matches(snapshot.meshes[1],&input.logical_mesh); } }//namespaceserif::geometry::deformation::backend::mfem