| Module | Source File | Description |
|---|---|---|
| cdifs | ../../cdifs.f90 | Constant Density Incompressible Flow Solver. Available Features: + HYPRE solvers for the pressure-Poisson equation + Immersed Boundaries + Resolved Particles x Lagrangian point-particles (to-do) |
| cdifs_AdvanceSolution_smod | ../../cdifs_advance.f90 | |
| cdifs_Monitor_smod | ../../cdifs_monitor.f90 | |
| cdifs_PrepareSolver_smod | ../../cdifs_prepare.f90 | |
| cdifs_WriteOutputData_smod | ../../cdifs_output.f90 | |
| cdifs_WriteRestartData_smod | ../../cdifs_restart.f90 | |
| collisions | ../../collisions.f90 | Toolkit that handles collisions between resolved particles, point particles, immersed boundaries, and walls. |
| grans | ../../grans.f90 | Granular flow solver with Point and/or Resolved Particles Available Features: + Point Particles + Resolved Particles + Immersed Boundaries + Solid volume fraction solver |
| grans_AdvanceSolution_smod | ../../grans_advance.f90 | |
| grans_module_smod | ../../grans_monitor.f90 | |
| grans_PrepareSolver_smod | ../../grans_prepare.f90 | |
| grans_WriteOutputData_smod | ../../grans_output.f90 | |
| grans_WriteRestartData_smod | ../../grans_restart.f90 | |
| immersed_boundaries | ../../immersed_boundaries.f90 | |
| immersed_boundaries_markers | ../../immersed_boundaries_markers.f90 | Implementation of immersed boundaries following the Volume-Filtering Immersed Boundary (VFIB) Method. This module defines two objects: - marker_obj: this represents an element of the immersed boundary tessellation. Notably, it contains information on the surface area, normal vector, centroid position, centroid velocity, and force applied on the centroid of the tessellation element. Note that the actual shape of the element (e.g. triangular, rectangular, or other) is not stored and not needed in the VFIB method. - marker_set: this represents a collectation of tessellation elements (i.e., marker_obj) of an immersed boundary. This object offers additional methods to compute the surface density field, normal fields, IB forcing field, and I/O. There are also methods to build pre-defined basic geometries (Sphere, Plane, Cylinder) that can be used to form more complex ones. |
| immersed_boundaries_solids | ../../immersed_boundaries_solids.f90 | Tools to represent a collection of immersed solids for Fluid-Solid Interaction. |
| leapBC | ../../leapbc.f90 | Module that defines objects and methods to manage boundary conditions. |
| leapBlock | ../../leapblock.f90 | Defines structured blocks. A block contains three axes and may be standalone or as part of an domain partition. |
| leapCli | ../../leapcli.f90 | |
| leapCuda | ../../leapcuda.f90 | |
| leapDiffOp | ../../leapdiffop.f90 | Module that defines differentional operators and interpolators based on Morinishi's method. Currently supports 2nd, 4th, and 6th order operators. |
| leapEulerian | ../../leapeulerian.f90 | Module of objets to work with Eulerian data in LEAP. |
| leapfilters | ../../leapfilters.f90 | This module defines a collection of 1D filters. The following filters (and their integrals) are available: - Box filter - Triangle filter - Parabolic filter - Cosine filter - Triweight filter - Roma and Peskin filter - Another cosine filter |
| leapHypre | ../../leaphypre.f90 | Module giving access to the HYPRE solvers for sparse linear systems. |
| leapIO | ../../leapio.f90 | Collection of IO modules. Currently supported IO formats: - HDF5 (Read/Write) - XDMF (Write only) - H5HUT (Read/Write) - SILO (Write only) Note that the XDMF module is a companion module that writes meta data meta data only. It's intended to be used with the HDF5 module. |
| leapIO_h5hut | ../../leapio_h5hut.f90 | Module that defines objects and methods to write/read files in the H5HUT format. It uses LEAP's HDF5 IO tool, and is provided for backward compatibility with earlier versions of LEAP that used H5HUT exclusively. |
| leapIO_hdf5 | ../../leapio_hdf5.f90 | This module defines objects and methods to read/write data in the HDF5 format into LEAP. |
| leapIO_silo | ../../leapio_silo.f90 | This module defines objects and methods to write data with the SILO library. Note that only write operations are supported, i.e., no read. |
| leapIO_xdmf | ../../leapio_xdmf.f90 | Utility to write an XDMF file to use with VisIt. Currently only supports 3D data on "3DRectMesh" grids with nodal data stored in HDF5 files. |
| leapKinds | ../../leapkinds.f90 | Defines standard integer, real, and string sizes used in LEAP. The Working Precision (WP) for reals is by default DOUBLE PRECISION, unless the user specifies 'USE_SP' at compilation, which sets SINGLE PRECISION instead. |
| leapLagrangian | ../../leaplagrangian.f90 | Module of abstract objets defining Lagrangian data structure. A lagrangian object: - is defined at mininum by an id, 3D position, and coordinates of cell in underlying grid where it's located. - objects with id>0 are considered as active objects. - objects with id=0 are considered inactive, and scheduled for removal. - ogjects with id<0 represent ghostobjects. |
| leapMonitor | ../../leapmonitor.f90 | A module that defines objects and methods to write column separated data to the stdout and/or ASCII files. |
| leapParallel | ../../leapparallel.f90 | |
| leapParser | ../../leapparser.f90 | Simple parser to read inputs from ASCII files. These files should be organized like this: Label 1 : 0.1 # A scalar value Label 2 : 0.1 0.2 0.3 # A vector value Label 3 : Test # A string Label 4 : Test1 Test2 # An array of strings Label 5 : .true. # A logical !Label 6 : .false. # This line is ignored because of '!' Label 7 : 0.1 ! 0.2 0.3 # A scalar value |
| leapSolver | ../../leapsolver.f90 | Module that defines the basic structure of a LEAP solver. This is intended to be a template for solvers defined in LEAP. |
| leapTimer | ../../leaptimer.f90 | Module that defines a time management utility for LEAP. The timer object serves to keep track of time related quantities in LEAP solvers, such as: - the current iteration and simulation time, - the time step (dt), - the elapsed wall clock since the object has been initialized, - time at which to perform IO, - timing data, among other things. See timer_obj for further details. |
| leapUtils | ../../leaputils.f90 | Utilities for LEAP. |
| particles_point | ../../particles_point.f90 | Numerical methods for lagrangian point particles. |
| particles_resolved | ../../particles_resolved.f90 | Methods to treat the particle phase as immersed boundaries in particle-resolved direct numerical simulations (PR-DNS) |