From: Roy S. <roy...@ic...> - 2006-07-28 03:47:30
|
On Wed, 26 Jul 2006, David Xu wrote: > Thanks. The reason why I need xyz of the DOFs is that my system matrices are > solved by an eigenvalue solver outside libmesh and the size of the > eigenvector solution produced by the solver equals to the dimension of the > system matrices (or DOFs). I'd like to plot the eigenvector solutions, thus > I need to the correspondent xyz coordinates of each of the eigenvector value > for visualization purpose. No, you don't. Those XYZ coordinates *overlap* - each Hermite point will have 2 degrees of freedom in 1D, 4 in 2D, and 8 in 3D. You can throw away all but the first degree of freedom on each node and plot each piecewise cubic element as a piecewise linear, but if you want an accurate representation of your results you'll either need plotting software that can handle higher polynomials or you'll need to subdivide your mesh elements. The most general way you can do things is to load your eigenvector solutions back into libMesh (preferably into the same running process that gave you the original matrix, so there's no question of node renumbering). Then you can use the libMesh plotting functions (assuming you're happy with the limitations of those output formats) or use the libMesh FE objects to get an arbitrarily dense cloud of points for your own plotting software. --- Roy Stogner |