Go to the documentation of this file. 20 #ifndef LIBMESH_FE_INTERFACE_MACROS_H 21 #define LIBMESH_FE_INTERFACE_MACROS_H 23 #include "libmesh/libmesh_config.h" 25 #ifdef LIBMESH_ENABLE_INFINITE_ELEMENTS 27 #include "libmesh/enum_to_string.h" 29 #define inf_fe_switch(func_and_args) \ 34 inf_fe_family_mapping_switch (1, func_and_args, return, ;); \ 36 inf_fe_family_mapping_switch (2, func_and_args, return, ;); \ 38 inf_fe_family_mapping_switch (3, func_and_args, return, ;); \ 40 libmesh_error_msg("Invalid dim = " << dim); \ 44 #define inf_fe_family_mapping_switch(dim, func_and_args, prefix, suffix) \ 46 switch(fe_t.inf_map) \ 50 switch (fe_t.radial_family) \ 53 prefix InfFE<dim,INFINITE_MAP,CARTESIAN>::func_and_args suffix\ 55 prefix InfFE<dim,JACOBI_20_00,CARTESIAN>::func_and_args suffix\ 57 prefix InfFE<dim,JACOBI_30_00,CARTESIAN>::func_and_args suffix\ 59 prefix InfFE<dim,LEGENDRE,CARTESIAN>::func_and_args suffix \ 61 prefix InfFE<dim,LAGRANGE,CARTESIAN>::func_and_args suffix \ 63 libmesh_error_msg("Invalid radial family = " << Utility::enum_to_string(fe_t.radial_family)); \ 69 libmesh_not_implemented(); \ 71 libmesh_error_msg("Invalid radial mapping " << Utility::enum_to_string(fe_t.inf_map)); \ 75 #endif //LIBMESH_ENABLE_INFINITE_ELEMENTS 77 #endif // define LIBMESH_FE_INTERFACE_MACROS_H