• Home
  • Blog
  • Research
  • Publications
  • Schnek
    • Documentation
  • Opar
  • Home
  • Blog
  • Research
  • Publications
  • Schnek
    • Documentation
  • Opar

Pages

  • Blog
  • Disclaimer
  • Home
  • Privacy Policy
  • Research
  • Publications
  • Schnek
    • Schnek User Documentation
      • Installation
      • Multi-Dimensional Grids
        • Grid Basics
        • Index Types and the Array Class
        • Additional Array Functions
        • Argument Checking Policies
        • Sub Grids and Grid Transformations
        • Storage policies
      • Reading Setup Files
        • Setup Files: A first example
        • Error Handling
        • Default Values, Arrays and Constants
        • Evaluating expressions
        • Filling Fields
        • Adding user defined functions
      • Simulation Blocks and Data
        • Hierarchical Simulation Blocks
        • Handling Multiple Child Block Types
        • Sharing Data Between Blocks
        • The Block Initialisation Life Cycle
        • Adding Literature References
      • Creating parallel codes
        • Dividing Simulation Domains
        • Cartesian subdivision using MPI
      • Ranges, Ghost Cells and Fields
        • Rectangular Ranges
        • Boundaries
        • Fields
      • Writing Data
        • The Diagnostic Manager
        • Writing Grids to HDF5
  • Opar

Creating parallel codes

Schnek provides a simplified interface for creating parallel simulation codes. At the heart of this interface lies the DomainSubdivision class. This class defines an abstract interface for partitioning a global simulation domain into local sub-domains for the individual processes. Implementations of this interface use MPI routines to pass data between the processes.

This section covers the following topics.

  • Dividing the simulation domain
  • Cartesian subdivision using MPI
© Holger Schmitz

Disclaimer | Privacy Policy