-
Notifications
You must be signed in to change notification settings - Fork 247
Mesh node ordering
Philipp Bucher edited this page Jun 7, 2021
·
14 revisions
The node ordering followed by Kratos is the very same considered by the pre/post-processor GiD. You can see the notation considered by them [here]http://www-opale.inrialpes.fr/Aerochina/info/en/html-version/gid_11.html#SEC187).
Following the documentation structure used in GMSH we represent the node ordering considered in Kratos.
Additionally everything related with geometry implementation can be directly consulted on the geometries code.
Line2D2/ Line2D3/
Line3D2: Line3D3:
0----------1 --> u 0-----2----1
Triangle2D3/ Triangle2D6/
Triangle3D3: Triangle3D6:
v
^
|
2 2
|`\ |`\
| `\ | `\
| `\ 5 `4
| `\ | `\
| `\ | `\
0----------1 --> u 0-----3----1
Quadrilateral2D4/ Quadrilateral2D8/ Quadrilateral2D9/
Quadrilateral3D4: Quadrilateral3D8: Quadrilateral3D9:
v
^
|
3-----------2 3-----6-----2 3-----6-----2
| | | | | | |
| | | | | | |
| +---- | --> u 7 5 7 8 5
| | | | | |
| | | | | |
0-----------1 0-----4-----1 0-----4-----1
Tetrahedra3D4: Tetrahedra3D10:
v
.
,/
/
2 3
,/|`\ ,/|`\
,/ | `\ ,/ | `\
,/ '. `\ ,7 '. `9
,/ | `\ ,/ 8 `\
,/ | `\ ,/ | `\
0-----------'.--------1 --> u 0--------6--'.--------2
`\. | ,/ `\. | ,/
`\. | ,/ `\. | ,5
`\. '. ,/ `4. '. ,/
`\. |/ `\. |/
`3 `1
`\.
` w
Hexahedron3D8: Hexahedron3D20: Hexahedron3D27:
v
3----------2 3----10----2 3----10----2
|\ ^ |\ |\ |\ |\ |\
| \ | | \ | 15 | 14 |15 23 | 14
| \ | | \ 9 \ 11 \ 9 \ 20 11 \
| 7------+---6 | 7----18+---6 | 7----18+---6
| | +-- |-- | -> u | | | | |22 | 26 | 24|
0---+---\--1 | 0---+-8----1 | 0---+-8----1 |
\ | \ \ | \ 17 \ 19 \ 17 25 \ 19
\ | \ \ | 12 | 13| 12 | 21 13|
\| w \| \| \| \| \|
4----------5 4----16----5 4----16----5
Prism3D6: Prism3D15:
w
^
|
3 3
,/|`\ ,/|`\
,/ | `\ 12 | 14
,/ | `\ ,/ | `\
4------+------5 4------13-----5
| | | | 9 |
| ,/|`\ | | | |
| ,/ | `\ | | | |
|,/ | `\| | | |
,| | |\ 10 | 11
,/ | 0 | `\ | 0 |
u | ,/ `\ | v | ,/ `\ |
| ,/ `\ | | ,6 `8 |
|,/ `\| |,/ `\|
1-------------2 1------7------2
- Getting Kratos (Last compiled Release)
- Compiling Kratos
- Running an example from GiD
- Kratos input files and I/O
- Data management
- Solving strategies
- Manipulating solution values
- Multiphysics
- Video tutorials
- Style Guide
- Authorship of Kratos files
- Configure .gitignore
- How to configure clang-format
- How to use smart pointer in Kratos
- How to define adjoint elements and response functions
- Visibility and Exposure
- Namespaces and Static Classes
Kratos structure
Conventions
Solvers
Debugging, profiling and testing
- Compiling Kratos in debug mode
- Debugging Kratos using GDB
- Cross-debugging Kratos under Windows
- Debugging Kratos C++ under Windows
- Checking memory usage with Valgind
- Profiling Kratos with MAQAO
- Creating unitary tests
- Using ThreadSanitizer to detect OMP data race bugs
- Debugging Memory with ASAN
HOW TOs
- How to create applications
- Python Tutorials
- Kratos For Dummies (I)
- List of classes and variables accessible via python
- How to use Logger
- How to Create a New Application using cmake
- How to write a JSON configuration file
- How to Access DataBase
- How to use quaternions in Kratos
- How to do Mapping between nonmatching meshes
- How to use Clang-Tidy to automatically correct code
- How to use the Constitutive Law class
- How to use Serialization
- How to use GlobalPointerCommunicator
- How to use PointerMapCommunicator
- How to use the Geometry
- How to use processes for BCs
- How to use Parallel Utilities in futureproofing the code
- Porting to Pybind11 (LEGACY CODE)
- Porting to AMatrix
- How to use Cotire
- Applications: Python-modules
- How to run multiple cases using PyCOMPSs
- How to apply a function to a list of variables
- How to use Kratos Native sparse linear algebra
Utilities
Kratos API
Kratos Structural Mechanics API