The past few days I've been trying to solve a similar eigenmodes problem, and I have managed to produce useable results. I did use the VTU file format instead of the VTK fileformat though, but I am not sure if that makes a difference. Anyway, I noticed that for the linear elasticy equation (In Solver 1) I have to set
If I don't do this then I'll only get zeros in the displacement vectors
Code: Select all
<VTKFile type="UnstructuredGrid" version="0.1" byte_order="LittleEndian">
<UnstructuredGrid>
<Piece NumberOfPoints="2328" NumberOfCells="10047">
<PointData Vectors="displacement">
<DataArray type="Float64" Name="displacement" NumberOfComponents="3" format="ascii">
0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 0.0000000E+000 ....
</DataArray>
</PointData>
This could either be intended behaviour or a bug, I don't know. But if it is by design then it would make more sense to call the parameter "Calculate Stresses AND DISPLACEMENTS".
While I was looking in the source code (ResultOutputSolve.src) for clues, I found a feature which I believe is yet undocumented: you can get an undeformed mesh shape, i.e. the original node coordinates without any displacement, if you add this parameter to the ResultOutputSolver
This is very handy when doing an eigenmode analysis, because in my experience these always results in enormous deformations. What's even more, it even turned out to be indispensible in my case because when I calculated "coords - displacement" in Paraview to get the undeformed shape, the resulting surface looked pretty bad due to rounding errors. These rounding errors didn't occur when Elmer calculated the undeformed shape beforehand. Please note though that this feature is only available for VTU files. For some reason this has not been implemented for legacy VTK files (see line 2594 of ResultOutputSolve.src)
Kind regards,
Diederik