31 mesh.createVertex(Eigen::Vector2d::Zero());
32 mesh.createVertex(Eigen::Vector2d::Constant(1));
46 mesh.createVertex(Eigen::Vector2d::Zero());
47 mesh.createVertex(Eigen::Vector2d::Constant(1));
61 mesh.createVertex(Eigen::Vector2d::Zero());
62 mesh.createVertex(Eigen::Vector2d::Constant(1));
75 if (context.isPrimary()) {
76 mesh.createVertex(Eigen::Vector2d::Zero());
78 mesh.createVertex(Eigen::Vector2d::Constant(1));
85 if (context.isPrimary()) {
87 "Mesh-io-VTPExport.init_0.vtp",
88 "Mesh-io-VTPExport.init.pvtp");
99 if (context.isPrimary()) {
100 mesh.createVertex(Eigen::Vector2d::Zero());
102 mesh.createVertex(Eigen::Vector2d::Constant(1));
109 if (context.isPrimary()) {
111 "Mesh-io-VTPExport.init_0.vtp",
112 "Mesh-io-VTPExport.init.pvtp");
123 if (context.isPrimary()) {
124 mesh.createVertex(Eigen::Vector2d::Zero());
126 mesh.createVertex(Eigen::Vector2d::Constant(1));
129 BOOST_TEST_REQUIRE(
data->timeStepsStorage().empty());
133 if (context.isPrimary()) {
135 "Mesh-io-VTPExport.init_0.vtp",
136 "Mesh-io-VTPExport.init.pvtp");
147 if (context.isPrimary()) {
148 mesh.createVertex(Eigen::Vector2d::Zero());
150 mesh.createVertex(Eigen::Vector2d::Constant(1));
152 auto missing =
mesh.createData(
"missing", 2, 0_dataID);
153 BOOST_TEST_REQUIRE(missing->timeStepsStorage().empty());
159 if (context.isPrimary()) {
161 "Mesh-io-VTPExport.init_0.vtp",
162 "Mesh-io-VTPExport.init.pvtp");
172 const int dimensions = 2;
177 dataScalar->requireDataGradient();
178 dataVector->requireDataGradient();
179 mesh.createVertex(Eigen::Vector2d::Constant(0.0));
180 mesh.createVertex(Eigen::Vector2d::Constant(1.0));
183 scalar.
values.setLinSpaced(0, 1);
185 dataScalar->setSampleAtTime(0, scalar);
188 vectorial.
values.setLinSpaced(0, 1);
190 dataVector->setSampleAtTime(0, vectorial);
202 const int dimensions = 3;
207 dataScalar->requireDataGradient();
208 dataVector->requireDataGradient();
209 mesh.createVertex(Eigen::Vector3d::Constant(0.0));
210 mesh.createVertex(Eigen::Vector3d::Constant(1.0));
213 scalar.
values.setLinSpaced(0, 1);
215 dataScalar->setSampleAtTime(0, scalar);
218 vectorial.
values.setLinSpaced(0, 1);
220 dataVector->setSampleAtTime(0, vectorial);
238 mesh.createEdge(v1, v2);
239 mesh.createEdge(v2, v3);
240 mesh.createEdge(v3, v1);
255 if (context.isRank(0)) {
260 mesh.createEdge(v1, v2);
261 mesh.createEdge(v2, v3);
262 mesh.createEdge(v3, v1);
263 mesh.setVertexOffsets({3, 3, 6, 7});
264 }
else if (context.isRank(1)) {
266 }
else if (context.isRank(2)) {
271 mesh.createEdge(v1, v2);
272 mesh.createEdge(v2, v3);
273 mesh.createEdge(v3, v1);
274 }
else if (context.isRank(3)) {
275 mesh.createVertex(Eigen::Vector2d::Constant(3.0));
282 fmt::format(
"Mesh-io-VTPExport.dt1_{}.vtp", context.rank));
283 if (context.isPrimary()) {
285 "Mesh-io-VTPExport.init.pvtp",
286 "Mesh-io-VTPExport.dt1.pvtp");
297 if (context.isRank(0)) {
305 mesh.createTriangle(e1, e2, e3);
306 mesh.setVertexOffsets({3, 3, 6, 7});
308 }
else if (context.isRank(1)) {
310 }
else if (context.isRank(2)) {
318 mesh.createTriangle(e1, e2, e3);
319 }
else if (context.isRank(3)) {
320 mesh.createVertex(Eigen::Vector3d::Constant(3.0));
327 fmt::format(
"Mesh-io-VTPExport.dt1_{}.vtp", context.rank));
328 if (context.isPrimary()) {
330 "Mesh-io-VTPExport.init.pvtp",
331 "Mesh-io-VTPExport.dt1.pvtp");
343 if (context.isRank(0)) {
350 mesh.createTriangle(em1, e12, e2m);
353 mesh.createTriangle(eo1, e12, e2o);
355 mesh.setVertexOffsets({3, 6, 9, 12});
356 }
else if (context.isRank(1)) {
363 mesh.createTriangle(em1, e12, e2m);
366 mesh.createTriangle(eo1, e12, e2o);
367 }
else if (context.isRank(2)) {
374 mesh.createTriangle(em1, e12, e2m);
377 mesh.createTriangle(eo1, e12, e2o);
378 }
else if (context.isRank(3)) {
385 mesh.createTriangle(em1, e12, e2m);
388 mesh.createTriangle(eo1, e12, e2o);
395 fmt::format(
"Mesh-io-VTPExport.dt1_{}.vtp", context.rank));
396 if (context.isPrimary()) {
398 "Mesh-io-VTPExport.init.pvtp",
399 "Mesh-io-VTPExport.dt1.pvtp");
BOOST_AUTO_TEST_CASE(testIQNIMVJPPWithSubsteps)
BOOST_AUTO_TEST_CASE(ExportScalar)
BOOST_AUTO_TEST_SUITE(PreProcess)
BOOST_AUTO_TEST_SUITE_END()
#define PRECICE_TEST_SETUP(...)
Creates and attaches a TestSetup to a Boost test case.
void doExport(int index, double time) final override
Export the mesh and writes files.
Linear edge of a mesh, defined by two Vertex objects.
Container and creator for meshes.
provides Mesh, Data and primitives.
std::shared_ptr< Data > PtrData
void expectFiles(Args... args)
Main namespace of the precice library.
Eigen::MatrixXd gradients
The gradients of the data. Use gradients.col(d*i+k) to get the gradient of vertex i,...
Sample & setZero()
Sets values and gradients to zero.