50 if (name ==
"") { name = uh.
get_space().valued(); }
52 gmsh << setprecision(numeric_limits<T>::digits10);
58 default:
error_macro (
"put_gmsh: do not known how to print " << uh.
valued() <<
"-valued field");
64 gmsh <<
"$NodeData" << endl
66 <<
"\"" << name <<
"\"" << endl
71 << n_gmsh_comp << endl
72 << uh.
get_geo().n_node() << endl;
77 for (
size_type idof = 0, ndof = uh.
ndof(); idof < ndof; idof++) {
78 gmsh << idof+1 <<
" " << uh.
dof(idof) << endl;
88 std::vector<details::field_rdof_sliced_const<field_basic<T,sequential>>> uh_comp (n_comp);
89 for (
size_type i_comp = 0; i_comp < n_comp; i_comp++) {
90 uh_comp[i_comp].proxy_assign (uh[i_comp]);
93 std::vector<T> u_dof (n_comp);
94 for (
size_type idof = 0, ndof = uh[0].ndof(); idof < ndof; idof++) {
96 for (
size_type i_comp = 0; i_comp < n_comp; i_comp++) {
97 gmsh <<
" " << uh[i_comp].
dof (idof);
99 for (
size_type i_comp = n_comp; i_comp < 3; i_comp++) {
113 for (
size_type idof = 0, ndof = t00.
ndof(); idof < ndof; idof++) {
114 gmsh << t00.
dof(idof) <<
" 0 0 "
124 for (
size_type idof = 0, ndof = t00.
ndof(); idof < ndof; idof++) {
125 gmsh << t00.
dof(idof) <<
" " << t01.
dof(idof) <<
" 0 "
126 << t01.
dof(idof) <<
" " << t11.
dof(idof) <<
" 0 "
138 for (
size_type idof = 0, ndof = t00.
ndof(); idof < ndof; idof++) {
139 gmsh << t00.
dof(idof) <<
" " << t01.
dof(idof) <<
" " << t02.
dof(idof) <<
" "
140 << t01.
dof(idof) <<
" " << t11.
dof(idof) <<
" " << t12.
dof(idof) <<
" "
141 << t02.
dof(idof) <<
" " << t12.
dof(idof) <<
" " << t22.
dof(idof) << endl;
148 default:
error_macro (
"put_gmsh: do not known how to print " << uh.
valued() <<
"-valued field");
150 gmsh <<
"$EndNodeData" << endl;
151 }
else if (uh.
get_space().degree() == 0) {
155 gmsh <<
"$ElementData" << endl
157 <<
"\"" << name <<
"\"" << endl
162 << n_gmsh_comp << endl
163 << uh.
get_geo().size() << endl;
168 for (
size_type idof = 0, ndof = uh.
ndof(); idof < ndof; idof++) {
169 gmsh << idof+1 <<
" " << uh.
dof(idof) << endl;
173 default:
error_macro (
"put_gmsh: do not known how to print " << uh.
valued() <<
"-valued field");
175 gmsh <<
"$EndElementData" << endl;
181 gmsh <<
"$ElementNodeData" << endl
183 <<
"\"" << name <<
"\"" << endl
188 << n_gmsh_comp << endl
189 << uh.
get_geo().size() << endl;
196 std::vector<size_type> idof;
197 for (
size_type ie = 0, ne = omega.size(); ie < ne; ie++) {
199 Vh.dis_idof (K, idof);
200 gmsh << ie+1 <<
" " << idof.size();
201 for (
size_type loc_idof = 0; loc_idof < idof.size(); loc_idof++) {
202 gmsh <<
" " << uh.
dof(idof[loc_idof]);
208 default:
error_macro (
"put_gmsh: do not known how to print " << uh.
valued() <<
"-valued field");
210 gmsh <<
"$EndElementNodeData" << endl;