Welcome to hypredrive’s documentation!¶
Contents:
- Introduction
- Installation
- Input Structure (YAML)
- Driver Examples (hypredrive-cli)
- CLI Overrides (
-a/--args) - Example 1: Minimal configuration
- Example 2: Parallel run with full AMG configuration
- Example 3: Minimal multigrid reduction strategy
- Example 4: Advanced multigrid reduction strategy
- Example 5: Spreading input parameters in multiple files
- Example 6: Full eigenspectrum computation (single rank)
- Example 7: Solving a sequence of linear systems
- Example 8: Multiple preconditioner variants in one YAML
- CLI Overrides (
- Library Examples (libHYPREDRV)
- Overview of Typical Steps
- Example 1: Laplace’s equation
- Example 2: Mixed Darcy Flow
- Example 3: Linear Elasticity
- Example 4: Nonlinear Heat Flow
- Example 5: Lid-Driven Cavity (Navier-Stokes)
- Governing Equations (Incompressible Navier-Stokes)
- Geometry and Boundary Conditions
- Numerical Discretization
- Parallel Partitioning
- Linear System Creation
- State Vector Management for Time-Stepping
- Linear Solver Configuration
- Time Stepping and Newton Convergence
- Visualizing the Solution
- Validation Results
- Reproducible Run
- Interfaces
- API Reference
- Why use
libHYPREDRV? - Usage Notes
- Reference by Topic
- Detailed API Reference
HYPREDRV_tHYPREDRV_Initialize()HYPREDRV_Finalize()HYPREDRV_ErrorCodeDescribe()HYPREDRV_ErrorInvalidValue()HYPREDRV_Create()HYPREDRV_Destroy()HYPREDRV_PrintLibInfo()HYPREDRV_PrintSystemInfo()HYPREDRV_PrintExitInfo()HYPREDRV_InputArgsParse()HYPREDRV_SetLibraryMode()HYPREDRV_ObjectSetName()HYPREDRV_InputArgsGetWarmup()HYPREDRV_InputArgsGetNumRepetitions()HYPREDRV_InputArgsGetNumLinearSystems()HYPREDRV_InputArgsGetNumPreconVariants()HYPREDRV_InputArgsSetPreconVariant()HYPREDRV_InputArgsSetPreconPreset()HYPREDRV_InputArgsSetSolverPreset()HYPREDRV_SolverPresetRegister()HYPREDRV_PreconPresetRegister()HYPREDRV_LinearSystemBuild()HYPREDRV_LinearSystemReadMatrix()HYPREDRV_LinearSystemSetMatrix()HYPREDRV_LinearSystemSetRHS()HYPREDRV_LinearSystemSetMatrixFromCSR()HYPREDRV_LinearSystemSetRHSFromArray()HYPREDRV_LinearSystemSetInitialGuess()HYPREDRV_LinearSystemSetSolution()HYPREDRV_LinearSystemSetReferenceSolution()HYPREDRV_LinearSystemResetInitialGuess()HYPREDRV_LinearSystemSetPrecMatrix()HYPREDRV_LinearSystemSetDofmap()HYPREDRV_LinearSystemSetInterleavedDofmap()HYPREDRV_LinearSystemSetContiguousDofmap()HYPREDRV_LinearSystemReadDofmap()HYPREDRV_LinearSystemPrintDofmap()HYPREDRV_LinearSystemPrint()HYPREDRV_LinearSystemSetNearNullSpace()HYPREDRV_LinearSystemGetSolutionValues()HYPREDRV_LinearSystemGetSolutionLength()HYPREDRV_LinearSystemGetSolutionNorm()HYPREDRV_LinearSystemGetSolution()HYPREDRV_LinearSystemGetRHSValues()HYPREDRV_LinearSystemGetRHS()HYPREDRV_LinearSystemGetMatrix()HYPREDRV_StateVectorSet()HYPREDRV_StateVectorGetValues()HYPREDRV_StateVectorCopy()HYPREDRV_StateVectorUpdateAll()HYPREDRV_StateVectorApplyCorrection()HYPREDRV_PreconCreate()HYPREDRV_LinearSolverCreate()HYPREDRV_PreconSetup()HYPREDRV_LinearSolverSetup()HYPREDRV_LinearSolverApply()HYPREDRV_PreconApply()HYPREDRV_PreconDestroy()HYPREDRV_LinearSolverDestroy()HYPREDRV_StatsPrint()HYPREDRV_AnnotateBegin()HYPREDRV_AnnotateEnd()HYPREDRV_AnnotateLevelBegin()HYPREDRV_AnnotateLevelEnd()HYPREDRV_LinearSystemComputeEigenspectrum()HYPREDRV_LinearSolverGetNumIter()HYPREDRV_LinearSolverGetSetupTime()HYPREDRV_LinearSolverGetSolveTime()HYPREDRV_StatsLevelGetCount()HYPREDRV_StatsLevelGetEntry()HYPREDRV_StatsLevelPrint()
- Why use
- Developer Notes
- Utilities
- Frequently Asked Questions (FAQ)
- What is hypredrive?
- How do I install hypredrive?
- Which linear system types can hypredrive solve?
- How do I configure hypredrive for my specific problem?
- How can I contribute to hypredrive?
- Can I use hypredrive on GPU-accelerated systems?
- Can I compile hypredrive on Windows machines?
- How do I debug solver failures?
- What should I do if I encounter an issue with hypredrive?
- How is hypredrive licensed?