Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CG3 triangle mesh support and VTK visualization of CG2 and CG3 meshes/functions #532

Merged
merged 45 commits into from Sep 26, 2019

Conversation

jorgensd
Copy link
Sponsor Member

  • Exposing VTKFile to write higher order meshes/functions to file

  • Adding ordering for CG3 elements with the VTK formating (Counter-clockwise).

  • Minor changes to quad meshes, as there was some weird duplication of ordering of cells compared to VTK (dolfin::generation generates lexiographic ordering, while VTK assumes counter clockwise).

  • Unit tests for higher order meshes added, explaining the ordering of cells

jorgensd and others added 30 commits September 13, 2019 13:32
Loads of similar code with slight variations, since the dolfin::generation::xxxMesh is initialized in a very different way than meshes from points
* test read mesh data

* add partition functions to python layer

* add distributed mesh test

* parametrize subset_comm in test

* use enum for graph partitioners

* some small fix and docstring improvement

* reorder parameters for consistency

* use type hint for return
Moved all vtk permutations to separate function. Changing how the file writers (also xdmf and hdf5) access the perturbation map. Moved mesh degree determination to separate function
…d note for future PR, and cleanup before PR of this branch
as the old implementation assumed that the permutation was (0,1,2,3) in Mesh.cpp, while the vtk_mapping was (0,1,3,2) (Due to lexiographic ordering in quads). Removing the duplication of mappings caused this change
@chrisrichardson
Copy link
Contributor

It is nice to have VTK output, but for large scale, we want XDMF. Is this possible for higher order? Generally XDMF follows similar rules to VTK. If not, we should think about how to get it added.

@jorgensd
Copy link
Sponsor Member Author

It is nice to have VTK output, but for large scale, we want XDMF. Is this possible for higher order? Generally XDMF follows similar rules to VTK. If not, we should think about how to get it added.

I can look into that, started with VTK since it was the easiest one to get up and running.

cpp/dolfin/io/VTKFile.cpp Outdated Show resolved Hide resolved
cpp/dolfin/io/VTKFile.cpp Outdated Show resolved Hide resolved
cpp/dolfin/io/VTKWriter.cpp Outdated Show resolved Hide resolved
cpp/dolfin/io/VTKWriter.cpp Outdated Show resolved Hide resolved
cpp/dolfin/io/VTKWriter.cpp Outdated Show resolved Hide resolved
cpp/dolfin/mesh/cell_types.cpp Outdated Show resolved Hide resolved
cpp/dolfin/mesh/cell_types.cpp Outdated Show resolved Hide resolved
cpp/dolfin/mesh/cell_types.cpp Outdated Show resolved Hide resolved
python/src/io.cpp Outdated Show resolved Hide resolved
@garth-wells garth-wells merged commit 8337aff into master Sep 26, 2019
@garth-wells garth-wells deleted the dokken/high-order-mesh branch September 26, 2019 15:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants