HOPR Documentation Logo

User Guide

  • User Guide
    • 1. Installation
      • 1.1. Executable download
        • 1.1.1. Docker
        • 1.1.2. AppImage
      • 1.2. Prerequisites
        • 1.2.1. Compilers
      • 1.3. Required Libraries
        • 1.3.1. Installing/setting up GCC
        • 1.3.2. Installing/setting up HOPR
        • 1.3.3. Installing/setting up HDF5
      • 1.4. Troubleshooting
        • 1.4.1. Wrongly set HDF5_ROOT variable
        • 1.4.2. Pre-compiled HDF5 via Spack and/or cmake
      • 1.5. Testing HOPR
    • 2. HOPR HDF5 Curved Mesh Format
      • 2.1. Introduction and Main Idea Behind the Mesh Format
      • 2.2. Global Attributes
      • 2.3. Data Arrays
        • 2.3.1. Example 3D Mesh
        • 2.3.2. Element Information (ElemInfo)
        • 2.3.3. FEM Element Information (FEMElemInfo)
        • 2.3.4. Side Information (SideInfo)
        • 2.3.5. Edge Information (EdgeInfo)
        • 2.3.6. Vertex Information (VertexInfo)
        • 2.3.7. Node Coordinates and Global Index
        • 2.3.8. Boundary Conditions
      • 2.4. Parallel Read-in
      • 2.5. Element Definitions
        • 2.5.1. Element Types
        • 2.5.2. Element High Order Nodes
        • 2.5.3. Element Corners, Sides
        • 2.5.4. Element Connectivity
      • 2.6. Additional Extensions: Hanging Node Interface
        • 2.6.1. Changes to Existing Data Format
        • 2.6.2. Additional Information for Octrees
    • 3. Appendix
      • 3.1. Tested compiler combinations
    • 4. List of Parameters

Developer Guide

  • Developer Guide
    • 1. Github Workflow
      • 1.1. Issues & Milestones
      • 1.2. Merge Request
      • 1.3. Release and deploy
        • 1.3.1. Release Tag
        • 1.3.2. Collaborative Numerics Group
        • 1.3.3. GitHub
    • 2. Style Guide
      • 2.1. Header of Functions and Subroutines
      • 2.2. Variables
      • 2.3. Functions and Control Structures
      • 2.4. Workflow Description
    • 3. Building the Documentation
    • 4. Compiler Options
    • 5. Building the AppImage Executable
    • 6. Troubleshooting
      • 6.1. dlopen(): error loading libfuse.so.2
    • 7. Markdown Examples
      • 7.1. hyperlinks
      • 7.2. Code environment
      • 7.3. Equations
      • 7.4. Bibtex, cite
      • 7.5. section references
      • 7.6. Figures, caption
      • 7.7. tables
      • 7.8. unnumbered section headings
      • 7.9. Code blocks for various languages

Tutorials

  • Built-In Mesh Generators
    • 1. Straight-Edged Boxes
      • 1.1. Cartesian Box
        • 1.1.1. Cartesian Box: Description of Parameters
        • 1.1.2. Cartesian Box: Boundary Conditions and Sketch
        • 1.1.3. Cartesian Box: Output Visualization
        • 1.1.4. Cartesian Box: Exemplary Variations of Boundary Conditions
      • 1.2. Periodic Boundary Conditions
        • 1.2.1. Periodic Boundary Conditions: Description of Parameters
        • 1.2.2. Periodic Boundary Conditions: Boundary Conditions and Sketch
      • 1.3. Multiple Cartesian Boxes
        • 1.3.1. Multiple Cartesian Boxes: Definition of Multiple Cartesian Boxes
        • 1.3.2. Multiple Cartesian Boxes: Sketch
        • 1.3.3. Multiple Cartesian Boxes: Output Visualization
      • 1.4. Stretching Functions
        • 1.4.1. Stretching Functions: Definition of Stretching Functions
        • 1.4.2. Stretching Functions: Building a Cartesian Box with Stretched Elements
        • 1.4.3. Stretching Functions: Building Multiple Cartesian Boxes with Stretched Elements
        • 1.4.4. Stretching Functions: Sketch
        • 1.4.5. Stretching Functions: Output Visualization
    • 2. Curved Meshes
      • 2.1. Curved Structured Mesh
        • 2.1.1. Stretching Functions
        • 2.1.2. Examples
      • 2.2. Mesh Curving by Post-Deformation
        • 2.2.1. Post-Deformation from a box to a cylinder
        • 2.2.2. Parameter Variations
      • 2.3. Curved Torus
        • 2.3.1. Post-Deformation from a box to a torus
      • 2.4. Curved Sphere
        • 2.4.1. Post-Deformation from a box to a sphere
        • 2.4.2. Spherical shell
  • External Meshes
    • 1. External Meshes without Curved Boundaries
      • 1.1. External Mesh
      • 1.2. Output Visualization
    • 2. External Meshes with Curved Boundaries
      • 2.1. Mesh Curving Techniques
      • 2.2. Curving Using Normal Vectors
      • 2.3. Curving Using Subdivided Surface Mesh
      • 2.4. Use of pre-curved meshes
  • Agglomeration of Block-Structured Meshes
    • 1. Block-Structured Meshes
      • 1.1. Restrictions on the block-structured meshes
      • 1.2. Initial Meshes
      • 1.3. Description of Parameters
  • Post-processing Meshes
    • 1. Mesh uncurving
    • 2. Mesh Refinement
    • 3. Generation of Hexahedral Meshes
  • Visualization
    • 1. HOPR Output Parameter
    • 2. Visualization with Paraview
      • 2.1. Parameter Settings
      • 2.2. Recommended Settings

References

  • References
HOPR Documentation
  • Search


© Copyright 2022, HOPR Developers.

Built with Sphinx using a theme provided by Read the Docs.