Hi, I'd like to be able to output the mesh coordinates for each point in time using the .dynpt-file that is described in the meshalyzer manual. However, the description is pretty short and doesn't really tell much except that it uses the igb format with data type vec3f.
So what I did was to generate a petsc-vector with 3 dof per vertex (dpn=3) and tried to output this using the igb_output_manager, also with dpn=3 which gives me an .dynpt (or .igb/.vec.igb) file of type vec3f.
However, if I want to load the data in meshalyzer, it tells me I have an incompatible number of points (in my case: 9999 instead of 3333).
The same problem persists if I try to generate the output in a normal .igb (or.vec.igb)-file. But for this the error message reads:
"Points number mismatch: Expected 3333 or 10000 but got 9999"
instead of
"Points number mismatch: Expected 3333 or 3333 but got 9999"
for the .dynpt - file.
Now I have two questions:
1. Am I doing something wrong initializing the petsc vectors? I use the line
"position.init(mesh, dpn=3, nodal_type)"
which generates a petsc_vector with 3 entries per node (so 9999 for 3333 vertices) which is what I wanted to have to be able to store 3 coords per node.
2. Am I doing something wrong regarding the output? I use the line
"output_manager.register_output(&eq_solver.position, elasticity_msh, 3, param_globals::dynptfile, "um");"
which is inspired by the way the output for Vm was set up.
Thank you for your help :)