8 #ifndef COMMON_LIBMESH_CODE_WEIGHT_PARAMETER_FUNCTION_H_
9 #define COMMON_LIBMESH_CODE_WEIGHT_PARAMETER_FUNCTION_H_
36 double alpha_coupling_BIG,
37 int subdomain_idx_BIG,
int subdomain_idx_micro,
int subdomain_idx_coupling) :
38 m_alpha_mesh{ alpha_mesh },
39 m_locator_unique_ptr { alpha_mesh.sub_point_locator() },
40 m_alpha_eps { alpha_eps },
41 m_alpha_coupling_BIG { alpha_coupling_BIG },
42 m_alpha_coupling_micro { 1. - alpha_coupling_BIG },
43 m_subdomain_idx_BIG { subdomain_idx_BIG },
44 m_subdomain_idx_micro { subdomain_idx_micro },
45 m_subdomain_idx_coupling { subdomain_idx_coupling }
50 m_alpha_mesh{ alpha_mesh },
51 m_locator_unique_ptr { alpha_mesh.sub_point_locator() },
52 m_alpha_eps { 10E-2 },
53 m_alpha_coupling_BIG { 0.5 },
54 m_alpha_coupling_micro { 0.5 },
55 m_subdomain_idx_BIG { -1 },
56 m_subdomain_idx_micro { -1 },
57 m_subdomain_idx_coupling { -1 }
68 int subdomain_idx_BIG,
int subdomain_idx_micro,
int subdomain_idx_coupling)
70 m_alpha_eps = alpha_eps;
71 m_alpha_coupling_BIG = alpha_coupling_BIG;
72 m_alpha_coupling_micro = 1. - alpha_coupling_BIG;
73 m_subdomain_idx_BIG = subdomain_idx_BIG;
74 m_subdomain_idx_micro = subdomain_idx_micro;
75 m_subdomain_idx_coupling = subdomain_idx_coupling;
80 libMesh::PointLocatorBase& locator = *m_locator_unique_ptr.get();
81 const libMesh::Elem* elem = locator(qpoint);
102 libMesh::PointLocatorBase& locator = *m_locator_unique_ptr.get();
103 const libMesh::Elem* elem = locator(qpoint);
125 m_locator_unique_ptr.reset(NULL);
double get_alpha_BIG(const libMesh::Point &qpoint)
weight_parameter_function(libMesh::Mesh &alpha_mesh)
std::unique_ptr< libMesh::PointLocatorBase > m_locator_unique_ptr
double m_alpha_coupling_micro
double get_alpha_micro(const libMesh::Point &qpoint)
int m_subdomain_idx_coupling
void set_parameters(double alpha_eps, double alpha_coupling_BIG, int subdomain_idx_BIG, int subdomain_idx_micro, int subdomain_idx_coupling)
int m_subdomain_idx_micro
weight_parameter_function(libMesh::Mesh &alpha_mesh, double alpha_eps, double alpha_coupling_BIG, int subdomain_idx_BIG, int subdomain_idx_micro, int subdomain_idx_coupling)
libMesh::Mesh & m_alpha_mesh
~weight_parameter_function()
double m_alpha_coupling_BIG