Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

All Functions and Classes

Alphabetical index of the public PyMRM API with direct links to source-backed reference pages.

NameModuleSummary
pymrm.convect.clampymrm.convectCompute the CLAM TVD correction in normalized-variable space.
pymrm.convect.construct_convflux_bcpymrm.convectConstruct boundary-face upwind corrections and source terms.
pymrm.convect.construct_convflux_upwindpymrm.convectConstruct a first-order upwind convective-flux operator.
pymrm.convect.construct_convflux_upwind_intpymrm.convectConstruct the internal-face upwind advection operator.
pymrm.convect.minmodpymrm.convectCompute the Minmod TVD correction in normalized-variable space.
pymrm.convect.musclpymrm.convectCompute the MUSCL TVD correction in normalized-variable space.
pymrm.convect.osherpymrm.convectCompute the Osher TVD correction in normalized-variable space.
pymrm.convect.smartpymrm.convectCompute the SMART TVD correction in normalized-variable space.
pymrm.convect.stoicpymrm.convectCompute the STOIC TVD correction in normalized-variable space.
pymrm.convect.upwindpymrm.convectReturn zero correction (first-order upwind limiter).
pymrm.convect.vanleerpymrm.convectCompute the van-Leer TVD correction in normalized-variable space.
pymrm.coupling.construct_interface_matricespymrm.couplingConstruct implicit interface-coupling matrices for two adjacent domains.
pymrm.coupling.translate_indices_to_larger_arraypymrm.couplingMap flat indices from a local array shape to a larger embedding shape.
pymrm.coupling.update_array_indicespymrm.couplingUpdate sparse-matrix indices for a new embedding shape.
pymrm.coupling.update_csc_array_indicespymrm.couplingUpdate CSC matrix row/column indexing for embedding in a larger domain.
pymrm.coupling.update_csr_array_indicespymrm.couplingUpdate CSR matrix row/column indexing for embedding in a larger domain.
pymrm.grid.generate_gridpymrm.gridReturn face coordinates and optionally cell-center coordinates.
pymrm.grid.non_uniform_gridpymrm.gridGenerate a one-dimensional stretched face grid.
pymrm.helpers.construct_coefficient_matrixpymrm.helpersBuild a sparse coefficient matrix with optional broadcasting and (row, col) coupling.
pymrm.ibm.IBMpymrm.ibmConsolidated IBM crossing data for both sides of an immersed interface.
pymrm.ibm.apply_ibmpymrm.ibmApply the immersed-boundary method to an operator matrix.
pymrm.ibm.apply_ibm_vectorpymrm.ibmApply the IBM per-row conditioning scale to a flat vector.
pymrm.ibm.construct_ibmpymrm.ibmBuild the immersed-boundary data from a spatial signed-distance field.
pymrm.ibm_coupling.apply_ibm_interfacepymrm.ibm_couplingApply general linear interface conditions to an operator matrix.
pymrm.ibm_coupling.construct_ibm_boundary_valuespymrm.ibm_couplingEliminate the interface value of a single side (immersed Robin BC).
pymrm.ibm_coupling.construct_ibm_interface_valuespymrm.ibm_couplingEliminate the interface values for linear interface conditions.
pymrm.ibm_recon.IBMNormalDerivativepymrm.ibm_reconOne-sided normal-derivative operators and diagnostics per IBM crossing.
pymrm.ibm_recon.construct_ibm_normal_derivativepymrm.ibm_reconConstruct one-sided normal-derivative operators for every IBM crossing.
pymrm.ibm_recon.construct_ibm_normal_derivative_opspymrm.ibm_reconExpand the reconstruction operators to the full field layout.
pymrm.ibm_recon.gfd_normal_derivative_weightspymrm.ibm_reconGFD weights for a directional derivative at a single interface point.
pymrm.ibm_recon.interface_normalspymrm.ibm_reconUnit interface normals (solid -> fluid) at each wall crossing.
pymrm.interpolate.compute_boundary_valuespymrm.interpolateCompute boundary values and boundary-normal gradients.
pymrm.interpolate.construct_boundary_value_matricespymrm.interpolateBuild matrices that evaluate boundary values from cell-centered unknowns.
pymrm.interpolate.create_staggered_arraypymrm.interpolateCreate a face/staggered field from scalar, centered, or staggered input.
pymrm.interpolate.interp_cntr_to_staggpymrm.interpolateInterpolate cell-centered values to face/staggered locations.
pymrm.interpolate.interp_cntr_to_stagg_tvdpymrm.interpolatePerform TVD interpolation from cell centers to faces.
pymrm.interpolate.interp_stagg_to_cntrpymrm.interpolateInterpolate face/staggered values to cell centers.
pymrm.numjac.NumJacpymrm.numjacNumerical Jacobian evaluator based on grouped finite differences.
pymrm.numjac.stencil_block_diagonalspymrm.numjacGenerate a block-diagonal or block-banded stencil description.
pymrm.operators.construct_divpymrm.operatorsConstruct a divergence matrix that maps face fluxes to cell balances.
pymrm.operators.construct_gradpymrm.operatorsConstruct the full gradient operator including boundary contributions.
pymrm.operators.construct_grad_bcpymrm.operatorsConstruct boundary-face gradient corrections and source terms.
pymrm.operators.construct_grad_intpymrm.operatorsConstruct the interior-face gradient operator.
pymrm.particles.AnalyticParticlepymrm.particlesParticle from a user-supplied body-frame level function.
pymrm.particles.Boxpymrm.particlesAxis-aligned (in body frame) box; rotate via orientation.
pymrm.particles.GridParticlepymrm.particlesParticle from level-function samples on its own body-frame grid.
pymrm.particles.Particlepymrm.particlesAbstract particle: a shape at a position with an orientation.
pymrm.particles.ParticleIBMInfopymrm.particlesSide-car information produced by construct_ibm_particles.
pymrm.particles.Spherepymrm.particlesSphere (any dimension; in 2-D this is a disk — see Circle).
pymrm.particles.construct_ibm_particlespymrm.particlesBuild immersed-boundary data directly from a particle assembly.
pymrm.particles.contact_conditionspymrm.particlesPer-crossing ic: base_ic everywhere, a contact condition on contacts.
pymrm.segmentation.Segmentationpymrm.segmentationPer-cell integer labelling of one region of the spatial grid.
pymrm.segmentation.combine_interface_conditionspymrm.segmentationMerge per-segment interface conditions into one per-crossing ic.
pymrm.segmentation.crossing_segmentspymrm.segmentationSegment label of the body bounded by each IBM crossing.
pymrm.segmentation.segment_domainpymrm.segmentationLabel the disjoint regions of a signed distance field.
pymrm.segmentation.segment_fieldpymrm.segmentationExpand per-segment values to a per-cell spatial field.
pymrm.segmentation.segment_valuespymrm.segmentationExpand per-segment values to a per-crossing array for pymrm.apply_ibm.
pymrm.segmentation.wall_contactpymrm.segmentationWhether each segment reaches each domain wall.
pymrm.segmentation.wall_patchpymrm.segmentationSegment labels on one domain wall, shaped as a full-field coefficient.
pymrm.segmentation.wall_valuespymrm.segmentationPer-segment values on one domain wall as a full-field BC coefficient.
pymrm.solve.clip_approachpymrm.solveProject values onto bounds, optionally with a relaxed approach rule.
pymrm.solve.newtonpymrm.solveSolve function(x) = 0 with Newton iterations.