Quantas Logo

INTRODUCTION

  • Overview
    • Design principles
    • How to read this manual
  • Capabilities
    • Scientific modules
      • HA
      • QHA
      • Elasticity
      • SEISMIC
      • EOS
      • Thermoelasticity
    • Shared outputs
    • What is new in Quantas 2.0
  • Changes from Quantas 0.9
    • Main differences
      • Architecture
      • Public Python usage
      • Persistence and reproducibility
      • Workflows and interoperability
      • Documentation and validation
    • What remained scientifically continuous
  • Citing Quantas
    • Harmonic and quasi-harmonic thermodynamics
    • Equation-of-state methods
    • Thermal-expansion models audited for EOS
    • Terrestrial pressure–temperature profiles
    • Thermoelastic and adiabatic elastic tensors
    • Thermoelastic validation systems
    • Elasticity and seismic-wave analysis

GETTING STARTED

  • Installation
    • Requirements
    • Install from the source tree
    • Verify the installation
    • Building the documentation
  • Your first calculation
    • Prepare a working directory
    • Run the command-line calculation
    • Check the terminal or report output
    • Repeat the calculation through Python
    • Compare the two frontends
    • Where to continue
  • Python API
    • The single-shot workflow pattern
    • Reading and normalizing input
    • Reports and plots remain frontend-neutral
    • Native result persistence
    • Domain-specific operations
    • EOS uses an archive lifecycle
    • Cross-module transformations
    • Events and progress
    • Capability discovery
    • Errors and validation
    • Where to continue
  • Command-line interface
    • Discover the command tree
    • The common command pattern
    • Command groups are scientifically different
    • Common output controls
    • Terminal output and redirection
    • Units and numerical precision
    • Errors and exit status
    • EOS batch execution
    • Where to continue
  • Results, reports, and plots
    • Result envelopes
    • Native HDF5 results
    • Reports
    • Tabular exports
    • Plots
    • Progress and workflow events
    • What should be kept?
    • Where to continue

SCIENTIFIC BACKGROUND

  • Harmonic Approximation
    • Lattice vibrations in the harmonic approximation
    • Independent quantum oscillators
    • Zero-point energy
    • Thermal internal energy
    • Helmholtz free energy
    • Entropy
    • Isochoric heat capacity
    • Low- and high-temperature limits
    • Scientific scope and limitations
    • Relation to the quasi-harmonic approximation
    • Quantities derived by Quantas
    • Bibliographic references
  • Quasi-Harmonic Approximation
    • Why the harmonic approximation is insufficient
    • Quasi-harmonic free-energy surface
    • Equilibrium at finite pressure
    • Thermodynamic potentials
    • Isothermal bulk modulus
    • Thermal expansion
    • Mode Grüneisen parameters
    • Isochoric and isobaric heat capacities
    • Adiabatic bulk modulus
    • Structural properties
    • Two equivalent QHA viewpoints
    • Scientific scope and limitations
    • Quantities derived by Quantas
    • Bibliographic references
  • Elasticity
    • Stress, strain, and Hooke’s law
    • Voigt representation and shear convention
    • Mechanical stability
    • Isotropic moduli from an anisotropic crystal
      • Voigt approximation
      • Reuss approximation
      • Hill average
    • Directional elastic properties
      • Young’s modulus
      • Linear compressibility
      • Shear modulus
      • Poisson ratio
      • Transverse extrema
    • Global extrema and anisotropy
    • Two- and three-dimensional representations
    • Elasticity at finite pressure and temperature
    • Tensor rotations and reference frames
    • What Quantas derives from the elastic tensor
    • Bibliographic references
  • Seismic-wave propagation
    • Equation of motion and Christoffel matrix
    • Acoustic modes and phase velocity
    • Polarization
    • Degeneracy and near-degeneracy
    • Group velocity and ray direction
    • Power-flow angle
    • Phase and group velocity surfaces
    • Shear-wave splitting
    • Acoustic enhancement and phonon focusing
    • Caustic candidates
    • Isotropic reference velocities
    • Physical validity and interpretation
    • What Quantas derives in SEISMIC
    • Bibliographic references
  • Equations of state
    • Reference state and notation
    • Pressure–volume equations of state
      • Murnaghan equation
      • Tait equation
      • Birch–Murnaghan equation
      • Natural-strain or Poirier–Tarantola equation
      • Vinet equation
      • Choosing a P–V family
    • Volume–temperature equations of state
      • Berman equation
      • Fei equation
      • Modified Holland–Powell equation
      • Salje equation
      • Kroll form of Holland–Powell
      • Choosing a V–T family
    • Pressure–volume–temperature equations of state
      • Linear variation of the zero-pressure bulk modulus
      • Anderson–Gruneisen coupling
      • Holland–Powell Einstein thermal pressure
      • Mie–Gruneisen–Debye thermal pressure
      • Choosing a P–V–T coupling
    • Linear equations of state
    • Scientific interpretation and model selection
    • What Quantas provides
    • Bibliographic references
  • Thermoelasticity
    • Thermodynamic foundation
    • Elastic coefficients under hydrostatic pre-stress
    • Static and vibrational parts of the free energy
    • Eulerian finite strain
    • Cold finite-strain elastic coefficients
    • Explicit quasi-harmonic elastic contribution
    • The quasi-static approximation
    • Isothermal and adiabatic elastic tensors
    • Approximation implemented by Quantas
    • Scientific scope and limitations
    • Bibliographic references
  • Terrestrial pressure–temperature depth profiles
    • Scientific purpose
    • Physical basis of terrestrial profiles
    • Layering, discontinuities, and mineralogical interpretation
    • Representation used by Quantas
    • PREM pressure
    • Continental conductive geotherms
    • Oceanic cooling models
    • Katsura (2022) mantle adiabat
    • Piecewise and tabulated models
    • Built-in scientific presets
    • Bibliographic references

IMPLEMENTATION AND WORKFLOWS

  • Concepts and conventions
    • Inputs, options, and results
    • Units and numerical precision
      • Stored values
      • Displayed values
    • Reporting, warnings, and events
      • Reports and plots
      • Events and progress
      • Warnings
    • HDF5 and provenance
  • Harmonic Approximation: implementation and workflow
    • Purpose and scope
    • Computational pipeline
    • Scientific input contract
      • Multi-volume HA
      • q-point weights
    • Treatment of zero and imaginary frequencies
    • Temperature grid and the zero-temperature limit
    • Units and normalization
    • Default behavior
    • Performance and memory use
    • Reports, plots, and persistence
    • Warnings and failure modes
    • Decision guide
    • Related documentation
  • Quasi-Harmonic Approximation: implementation and workflow
    • Purpose and scope
    • Complete computational pipeline
    • Preflight inspection
    • Input requirements and mode continuity
    • The sampled harmonic stage
    • Frequency and thermodynamic schemes
      • freq: mode-resolved frequency interpolation
        • Advantages
        • Limitations
      • td: thermodynamic-property interpolation
        • Advantages
        • Limitations
      • Comparison
    • Representing the free-energy curve
      • Polynomial minimization
        • Advantages
        • Limitations
      • EOS minimization
        • Advantages
        • Limitations
      • Choosing polynomial or EOS minimization
    • Polynomial degrees
    • Polynomial thermoelastic derivatives
      • local_grid — default
        • Advantages
        • Limitations
      • analytic
        • Advantages
        • Limitations
      • Convergence test for local derivatives
    • Three routes to volumetric thermal expansion
      • Mixed derivative — default
        • Why it is the default
        • Limitations
      • Mode-Grüneisen route
        • Advantages
        • Limitations
      • Numerical volume derivative
        • Advantages
        • Limitations
      • Choosing an expansion method
    • Derived thermodynamic quantities
    • Structural properties
    • Volume support, extrapolation, and fit quality
    • Failure policies and partial results
    • Uncertainty behavior
    • Performance and practical acceleration
    • Recommended staged workflow
    • Programmatic validation
    • Related documentation
  • Elasticity analysis: implementation and workflow
    • Purpose and scope
    • Computational pipeline
    • Input validation and tensor convention
    • Tensor rotation and analysis frame
    • Symmetry detection and specialization
    • Compliance and isotropic aggregate estimates
    • Mechanical stability
    • Global directional extrema
    • Principal-plane 2D fields
      • Choosing the 2D resolution
    • Three-dimensional directional fields
      • Persisted and transient surfaces
      • Physical and unit-sphere geometry
      • Three-dimensional convergence
    • Batching and memory
    • Performance and practical acceleration
    • Defaults and rationale
    • Warnings and failure modes
    • Results, export, and interoperability
    • Decision guide
    • Related documentation
  • Seismic-wave analysis: implementation and workflow
    • Purpose and scope
    • Computational pipeline
    • Input and physical preconditions
    • Tensor rotation
    • Isotropic reference velocities
    • Spherical sampling domain
    • Default grid and sampled extrema
    • Sampling levels
      • phase
      • group
      • enhancement — default
    • Christoffel eigenvalue validity
    • Degeneracy detection
    • Polarization tracking
    • Analytical group quantities
    • Enhancement, pseudoinverse, and caustic candidates
    • The meaning of batch_size=512
    • Angular convergence
    • Performance and memory strategy
    • Defaults and rationale
    • Warnings and diagnostic masks
    • Reports, export, and plots
    • Interoperability
    • Decision guide
    • Related documentation
  • EOS fitting: implementation and workflow
    • Purpose and scope
    • Why EOS uses a different command-line workflow
    • Computational pipeline
    • Scientific domains and result slots
    • Input normalization and preserved provenance
    • Targets, groups, and non-destructive data selection
    • Model construction
      • P–V implementation choices
      • V–T implementation choices
      • P–V–T implementation choices
    • Regression methods and their interpretation
      • Ordinary least squares (OLS)
      • Weighted least squares (WLS)
      • Iterative effective variance
      • Orthogonal distance regression (ODR)
      • Choosing a regression
    • Initial values, fixed parameters, and bounds
    • Covariance scaling
    • The batch specification
    • Batch ordering, acceptance, and replacement
    • Failure policy
    • Persistent archives and immutable history
    • The persistent Session API
    • Fit success versus scientific adequacy
    • Failed fits and last iterates
    • Post-fit diagnostics
    • Property calculation
    • Plotting implementation
    • Defaults and rationale
    • Performance and numerical controls
    • Recommended staged workflow
      • 1. Validate the input
      • 2. Establish a baseline
      • 3. Test statistical assumptions
      • 4. Test model sensitivity
      • 5. Accept deliberately
      • 6. Calculate and plot
    • Decision guide
    • Common interpretation errors
    • Interoperability and outputs
    • Further reading
  • Thermoelasticity: implementation and workflow
    • Purpose and scope
    • Computational pipeline
    • What the workflow calculates
    • Input normalization
      • Why CRYSTAL PRESSURE is required
      • Consistency of the elastic-volume series
      • Reference point and frame normalization
      • What is and is not fitted from the elastic outputs
    • Coupling to QHA
      • Required cold-QSA fields
      • Optional adiabatic fields
      • Atomic and cell normalization
      • QHA HDF5 versus QHA YAML
      • Volume support at coupling time
    • Calibration stage
      • Cold reference EOS
      • Choosing BM2, BM3, or BM4
      • Independent components and symmetry averaging
      • Exact-zero components
      • Cold finite-strain component model
      • Why only OLS is currently available
      • Second- and third-order finite strain
    • Scientific support diagnostics
      • Default support criteria
      • Validation presets
      • Fit failure and fit quality are different
    • Uncertainty propagation
      • Component-fit covariance
      • Shared reference-EOS covariance
      • QHA equilibrium-volume uncertainty
      • Derived components and tensor covariance
      • Adiabatic uncertainty
      • Uncertainty not represented
    • The reusable calibration archive
    • Post-fit reconstruction
      • Archived-field interpolation
      • Evaluation at the QHA volume
      • Point, grid, and profile analyses
      • Two independent extrapolation masks
    • Mechanical stability
    • Isothermal-to-adiabatic conversion
      • Implemented identity
      • Availability modes
      • Interpretation of \(C^S\)
    • Choosing the main scientific options
    • Recommended sensitivity study
      • Reference EOS and finite-strain order
      • Observation support
      • QHA sensitivity
      • Interpolation resolution
      • Depth-profile sensitivity
    • Performance and acceleration
      • Calibration cost
      • Post-fit cost and memory
      • No 512 convergence parameter
    • Diagnostics and reporting
    • Recommended production workflow
    • Common interpretation errors
    • Results and interoperability
  • Interoperability between workflows
    • Supported transformations
    • Why the CLI and API look different
    • General interoperability rules
      • Use typed transformations
      • Freeze expensive upstream results
      • Do not infer units from array magnitude
      • Preserve tensor condition
      • Treat extrapolation as a source property
    • QHA to Thermoelasticity
      • Scientific purpose
      • Accepted QHA sources
      • Context checks
      • CLI: explicit two-stage calculation
      • CLI: direct YAML source
      • API: inspect the coupling before fitting
    • Thermoelasticity to one material state
      • CLI: write a shared state input
    • State to Elasticity
      • CLI
      • API
    • State to SEISMIC
      • CLI
      • API
    • Complete CLI example
    • Complete Python API example
    • CLI/API equivalence
    • Provenance and persistence
      • QHA result
      • Thermoelastic context
      • Thermoelastic fit archive
      • Shared state input
      • Downstream HDF5 files
    • Failure modes and diagnostics
      • Different primitive atomic normalization
      • Missing equilibrium volume
      • Incomplete adiabatic inputs
      • QHA volume outside elastic support
      • Requested P or T outside the stored QHA grid
      • Invalid density
      • Unstable stiffness
      • Wrong tensor condition
      • Repeated upstream calculation
    • Performance and reuse
    • Decision guide
    • Boundaries of the current implementation
    • Related documentation

TUTORIALS

  • Harmonic Approximation
    • Scientific objective
    • Dataset
    • Temperature grid
    • Running HA from the command line
    • Understanding the HA report
      • Volume-only quantities
      • Temperature-volume arrays
    • Exporting a property table
    • Generating selected HA plots
      • Isochoric heat capacity
      • Vibrational Helmholtz free energy
    • Running the same calculation from Python
    • Scientific interpretation
    • Reproducibility checkpoints
  • Quasi-Harmonic Approximation
    • Scientific objective
    • Dataset and relationship to HA
    • Inspecting the static energy-volume range
    • Choosing the QHA model
    • Running QHA from the command line
    • Reading the QHA results
      • Pressure and temperature effects
      • Structural results
    • Exporting QHA tables
    • Generating selected QHA plots
      • Equilibrium volume
      • Heat capacities
      • Pressure-temperature map of thermal expansion
    • Running the same calculation from Python
    • Inspecting the typed result in Python
    • Exercise: sensitivity to interpolation and minimization
      • Running the four CLI calculations
      • Complete the table
      • What should be compared?
      • Optional extension: EOS-family sensitivity
    • Reproducibility checkpoints
    • Scientific limits
  • Elasticity analysis
    • Scientific questions
    • Dataset
    • Running Elasticity from the command line
    • Reading the report
      • Input and crystal system
      • Stiffness and compliance
      • Voigt–Reuss–Hill averages
      • Mechanical stability
      • Directional extrema
    • Exporting principal-plane data
    • Selected plots
      • Two-dimensional Young modulus
      • Three-dimensional physical surface
    • Running the same workflow from Python
    • Inspecting structured results
    • CLI/API equivalence
    • Reproducibility checkpoints
    • Further exploration
  • Seismic-wave analysis
    • Scientific questions
    • Dataset
    • Choosing the sampling calculation
    • Running SEISMIC from the command line
    • Reading the report
      • Sampling summary
      • Isotropic reference velocities
      • Phase velocities
      • Shear splitting and velocity ratios
      • Group velocity and power flow
      • Enhancement and caustic candidates
      • Polarization tracking diagnostics
    • Exporting sampled fields
    • Selected plots
      • Six-panel seismic summary
      • A single shear map with polarization
      • Three-dimensional compressional phase surface
    • Running the same workflow from Python
    • Inspecting structured fields
    • CLI/API equivalence
    • Reproducibility checkpoints
    • Grid-convergence exercise
  • EOS fitting tutorials
    • Recommended order
      • Controlling EOS fitting with a batch specification
        • Why use a specification file?
        • Resolution order
        • Dry-run validation
        • Choosing a regression method
        • Covariance scaling
        • Candidate records and accepted results
        • Running the same batch from Python
        • Exercise: add ODR without losing the reference fit
      • P–V tutorial: quartz compression
        • Scientific objective
        • Inspecting the input
        • A single direct fit
        • Running the comparison batch
        • Solver comparison
        • Model-order comparison
        • Fit and residual figures
        • Normalized-pressure diagnostic
        • Post-fit calculation
        • Python API
        • Exercise 1: is BM4 justified?
        • Exercise 2: axial compression of topaz
      • V–T tutorial: thermal expansion of rutile
        • Scientific objective
        • Input conventions
        • Direct CLI fit
        • Batch comparison
        • Solver sensitivity
        • Thermal-model sensitivity
        • Fit and residual plots
        • Axial thermal expansion
        • Post-fit calculation
        • Python API
        • Exercise 1: complete the ODR row
        • Exercise 2: test extrapolation
      • P–V–T tutorial: coupled EOS of NaF
        • Scientific objective
        • Why use the batch specification here?
        • Parameter constraints in the MGD job
        • Coupling comparison
        • Full-MGD result
        • Pressure–temperature coverage
        • Isotherms
        • Isobars
        • Residuals
        • Post-fit property calculation
        • Python API
        • Exercise 1: release fewer parameters
        • Exercise 2: compare outside the dense data region
      • EOS diagnostics and calculator
        • Selecting a result
        • Residual and finite-strain diagnostics
        • Property calculation
        • Uncertainties and extrapolation
        • Python API
      • EOS plotting
        • CLI workflow
        • Python API
        • Downloadable example
      • EOS MGD volume-only fitting through the Python API
        • Input requirements
        • Build the compositional model
        • Choose refinable MGD parameters
        • Run the fit
  • Thermoelasticity
    • Scientific objective
    • Dataset
      • Static elastic series
      • QHA dataset
    • Before continuing
    • Stage 1: generating the thermoelastic input
    • Stage 2: preparing the QHA result
    • Stage 3: calibrating the cold finite-strain model
      • Scientific choices
      • Reference EOS
      • Independent components
      • Understanding the fit figure
      • Why the fit archive contains no reconstructed tensor grid
    • Inspecting the calibrated archive
    • Stage 4: evaluating one state
      • Reusable Elasticity/SEISMIC input
    • Stage 5: evaluating a pressure-temperature grid
      • Pressure-temperature maps
    • Stage 6: comparing isothermal and adiabatic tensors
    • Stage 7: evaluating a geological profile
      • Profile definition
      • Selected profile states
      • Relative profile plot
      • Checking the P–T and volume domain
    • Running the same workflow from Python
      • Accessing typed arrays
    • Interpreting warnings and quality flags
    • Reproducibility checkpoints
    • Suggested exercises
    • Next steps

INPUT AND OUTPUT FORMATS

  • Input and output formats
    • Input contracts
    • Native result contracts
    • Human-readable outputs
    • General rules
  • Elasticity and SEISMIC text input
    • Canonical example
    • Job description
    • Stiffness matrix
      • Full symmetric matrix
      • Upper triangular matrix
      • Lower triangular matrix
    • Voigt convention
    • Symmetry requirements
    • Density for SEISMIC
    • Comments and blank lines
    • Generating inputs from external codes
    • Validation checklist
    • Related pages
  • HA and QHA phonon YAML
    • Minimal contract
    • Required top-level fields
    • Units
    • Volume and energy arrays
    • Q-point records
    • Q-point weights
    • Frequency records and non-positive modes
    • Mode continuity for QHA
    • Optional structural path
    • Input generation
    • Validation checklist
    • Related pages
  • EOS text input
    • Minimal examples
    • Comments
    • Keywords
    • Columns
    • Non-destructive selection and groups
    • Absolute and normalized structural data
    • Coordinate classification
    • Selecting V-T data
    • Data and fit plans
    • Compatibility data
    • P–V–T tables
    • CLI unit overrides
  • EOS batch specification
    • Running a specification
    • Generating the commented template
    • Dry-run validation
    • Syntax rules
    • Minimal example
    • Sections
      • [metadata]
      • [input]
      • [batch]
      • [defaults]
      • [defaults.pv], [defaults.vt], and [defaults.pvt]
    • Data selection and groups
      • [presentation]
      • [job NAME]
    • Default precedence
    • Targets
    • P–V models
    • V–T models
    • P–V–T models
    • Parameter constraints
    • Solver-specific validation
    • Acceptance and replacement
    • Complete example
    • Error diagnostics
    • Python API
    • Template generation API
  • Thermoelastic input
    • Complete example
    • Top-level structure
    • Conventions and units
    • Reference block
    • Elastic data records
    • Frame metadata
    • Series-level requirements
    • Relationship to the QHA file
    • Generating the file
    • Inspection from Python
    • Validation checklist
    • Related pages
  • Earth pressure-temperature profile specification
    • Units and general validation
    • Complete depth-pressure-temperature table
    • Composed YAML schema
      • Depth grid
      • Tabulated interpolation
    • Pressure models
      • PREM pressure
      • Layered lithostatic pressure
      • Tabulated pressure
    • Temperature models
      • Continental conductive geotherm
      • Oceanic half-space cooling
      • Oceanic plate cooling
      • Katsura mantle adiabat
      • Parametric basal thermal boundary layer
      • Tabulated temperature
    • Piecewise temperature profiles
    • Provenance and citations
    • CLI examples
  • Native HDF5 results
    • Common envelope
    • Metadata
    • Numerical precision
    • Normalized input
    • Options
    • Diagnostics and report text
    • Events
    • Recursive mapping representation
    • Units and descriptions
    • Missing and invalid values
    • Compression and chunking
    • Preferred public reading path
    • Direct h5py access
    • Writing or modifying native files
    • Module payload references
  • HA and QHA native HDF5 payloads
    • HA payload
    • QHA payload
      • Core coordinates and state fields
      • Thermodynamic grid arrays
      • Mode-resolved Gruneisen data
      • Structural fields
      • Uncertainties
      • Fit records and failed points
      • Completion state
    • Typed reading examples
    • Historical unit migration
    • Related pages
  • Elasticity and SEISMIC native HDF5 payloads
    • Elasticity payload
      • Core tensors and isotropic estimates
      • Directional extrema
      • Principal-plane fields
      • Persisted 3D surfaces
    • SEISMIC payload
      • Base tensor and grid
      • Phase fields
      • Group fields
      • Enhancement fields
      • Polarization tracking
      • Diagnostics metadata
    • Typed reading examples
    • Reading masks before reductions
    • Related pages
  • EOS native HDF5 archive
    • Scientific state model
    • Schema overview
    • Input preservation
    • Fit-record immutability
    • Accepted-result materialization
    • Python API
    • Resumable session and inspection API
    • Batch manifest
  • Thermoelastic HDF5 payload
    • Root payload
    • Grid axis order
    • Core grid datasets
    • Independent and full stiffness fields
    • Reference EOS
    • Component fits
    • Fit support and quality
    • Adiabatic fields
    • Mechanical stability
    • Depth-profile payloads
    • Explicit absence markers
    • Typed reading
    • Related pages
  • Inspecting and extracting native HDF5 data
    • Quick inspection from the shell
    • Metadata-driven reading with Quantas
    • Typed HA example
    • Typed QHA example
    • Typed Elasticity example
    • Typed SEISMIC example
    • Typed Thermoelasticity example
    • EOS archive example
    • Direct h5py inspection
    • Reading one dataset safely
    • Partial reads for large arrays
    • Validity and support masks
    • Extracting arrays to NPZ
    • Exporting a rectangular table
    • Extracting all recursive metadata
    • Provenance for derived analyses
    • Common mistakes
  • Tabular exports, reports, and plot files
    • Common text conventions
    • Plain-text reports
    • HA property tables
    • QHA tables
    • Elasticity directional export
    • SEISMIC long-form CSV
    • Thermoelastic point exports
    • Thermoelastic grid and profile tables
    • Complete thermoelastic tensor export
    • EOS diagnostic and calculation CSV
    • Plot files
    • Recommended archival set

COMMAND REFERENCE

  • Quantas command line
    • Command groups
    • Top-level command
      • quantas
  • Command-line conventions
    • Reading a command signature
    • Option groups
    • Paths and overwrite policy
    • Reports, terminal output, and progress
    • Units
    • Plot presets
    • Errors and exit status
    • Related documentation
  • quantas ha
    • Recommended sequence
    • Important distinctions
    • Generated command reference
      • quantas ha
        • export
        • inpgen
        • plot
        • run
  • quantas qha
    • Recommended sequence
    • Choosing options
    • Generated command reference
      • quantas qha
        • export
        • inpgen
        • inspect
        • plot
        • run
  • quantas elasticity
    • Recommended sequence
    • Sampling and plotting
    • Generated command reference
      • quantas elasticity
        • export
        • inpgen
        • plot
        • run
  • quantas seismic
    • Recommended sequence
    • Key controls
    • Generated command reference
      • quantas seismic
        • export
        • plot
        • run
  • quantas eos
    • Recommended sequence
    • Why run is different
    • Important option families
    • Generated command reference
      • quantas eos
        • calculate
        • diagnose
        • plot
        • run
        • spec-template
  • quantas thermoelasticity
    • Recommended sequence
    • Command families
    • Scientific cautions
    • Generated command reference
      • quantas thermoelasticity
        • analysis
        • export
        • inpgen
        • inspect
        • plot
        • profile-template
        • run
        • table

API REFERENCE

  • API overview
    • API lifecycle patterns
    • Result envelopes and typed payloads
    • Frontend-neutral reporting and plotting
    • Observers and progress
    • Runtime dependencies and optional features
    • Public namespaces
    • Related documentation
  • Common public contracts
    • Data lifecycle
    • Input and result contracts
      • InputData
      • PhononInputData
        • PhononInputData.natoms_per_formula_unit
        • PhononInputData.nvol
        • PhononInputData.nmodes
        • PhononInputData.kpoints
        • PhononInputData.total_q_points
        • PhononInputData.normalized_weights()
        • PhononInputData.has_structure()
        • PhononInputData.has_phonons()
      • ResultData
        • ResultData.add_result()
        • ResultData.add_warning()
      • get_result_payload()
    • Neutral reporting and plotting
      • ReportTable
      • PlotCollection
    • Events and observers
      • EventLevel
      • Event
      • EventRecord
        • EventRecord.from_event()
      • Observer
      • CallbackObserver
      • ListObserver
      • NullObserver
    • See also
  • Harmonic Approximation API
    • Minimal lifecycle
    • Passive contracts
      • Input
      • Options
      • Result
    • Input preparation
      • create_input()
      • read_input()
      • normalize_input()
    • Calculation and typed results
      • run()
      • get_result()
    • Reports, plots, and persistence
      • build_report()
      • build_plots()
      • write_result()
      • read_result()
    • See also
  • Quasi-Harmonic Approximation API
    • Recommended lifecycle
    • Scientific option types
      • Scheme
      • Minimization
      • ThermalExpansionMethod
      • PolynomialDerivativeMethod
      • ModeContinuity
      • FitFailurePolicy
    • Passive contracts
      • Input
      • Options
      • PlotOptions
      • Result
      • Preview
    • Input, inspection, and calculation
      • read_input()
      • normalize_input()
      • inspect()
      • run()
      • get_result()
    • Validation and comparison
      • ValidationSummary
      • PropertyDifference
      • validate_result()
      • compare_results()
    • Reporting, plotting, and persistence
      • list_plot_properties()
      • build_report()
      • build_plots()
      • write_result()
      • read_result()
    • See also
  • Elasticity API
    • Minimal lifecycle
    • Passive contracts and selectors
      • Input
      • Options
      • SurfaceOptions
      • Result
      • PlotProperty
      • SurfaceProperty
      • SurfaceGeometry
    • Input and calculation
      • read_input()
      • normalize_input()
      • run()
      • get_result()
    • Reporting and plotting
      • build_report()
      • build_plots()
      • build_2d_plots()
      • build_3d_plots()
    • Persistence
      • write_result()
      • read_result()
    • See also
  • SEISMIC API
    • Minimal lifecycle
    • Passive contracts and selectors
      • ElasticMedium
      • Input
      • Options
      • PlotOptions
      • SurfaceOptions
      • Result
      • SurfaceType
      • SurfaceGeometry
    • Input and calculation
      • read_input()
      • normalize_input()
      • run()
      • get_result()
    • Reports, summaries, and surfaces
      • build_report()
      • build_summary()
      • build_plots()
      • build_surfaces()
    • Export and persistence
      • write_csv()
      • write_result()
      • read_result()
    • See also
  • EOS API
    • Typical direct fit
    • Typical persistent batch
    • Reference sections
      • EOS contracts and model specifications
        • Dataset and domain capabilities
        • Model and parameter contracts
        • Fit request and result
        • Regression selectors and solver options
        • Archive slot, report, and plot contracts
      • EOS input and fitting operations
        • Input
        • Capabilities and request validation
        • Direct fitting
        • Record metadata helper
      • EOS batch, archive, and session API
        • Batch contracts
        • Specification files
        • Batch execution
        • Native archive
        • Persistent session
      • EOS reports, diagnostics, calculations, and plots
        • Post-fit result contracts
        • Diagnostics
        • Calculations
        • Batch reporting
        • Plot preparation
    • See also
  • Thermoelasticity API
    • Reference sections
      • Thermoelasticity contracts and selectors
        • Scientific selectors
        • Calibration and result contracts
        • Profile contracts
        • Plot selectors
        • Plot option contracts
      • Thermoelasticity calibration API
        • Input construction and normalization
        • QHA coupling context
        • Calculation
        • Typed result and persistence
        • Calibration reporting and default plots
      • Thermoelasticity post-fit analysis and export API
        • Grid construction and analysis
        • Profiles
        • Tensor selection and report tables
        • Tabular and interoperable exports
      • Thermoelasticity plotting API
        • Component resolution
        • P–T maps
        • Profile plots
        • Isothermal–adiabatic comparison
        • Domain diagnostics
    • See also
  • Rendering API
    • Rendered plot contracts
      • RenderedPlot
      • PlotRenderResult
        • PlotRenderResult.figures
        • PlotRenderResult.paths
    • Table rendering
      • render_table()
      • render_tables()
    • Plot rendering
      • render_plots()
    • See also
  • Terrestrial profile API
    • Profile contracts
      • DepthProfile
      • Model
      • Preset
    • Preset discovery and construction
      • preset_names()
      • presets()
      • build_preset()
    • Custom specifications
      • from_mapping()
      • read_spec()
    • See also
  • Interoperability API
    • QHA loading and coupling
      • load_qha_result()
      • qha_to_thermoelastic_context()
    • Thermoelastic state to SEISMIC
      • thermoelastic_to_seismic()
    • Complete public-API example
    • See also
  • Capability registry API
    • Capability and descriptor contracts
      • Capability
      • ModuleDescriptor
        • ModuleDescriptor.load()
        • ModuleDescriptor.has()
        • ModuleDescriptor.operation()
        • ModuleDescriptor.resolve_type()
        • ModuleDescriptor.input_type
        • ModuleDescriptor.options_type
        • ModuleDescriptor.result_type
    • Discovery
      • get()
      • iter_modules()
      • list_modules()
    • Result dispatch
      • module_from_result()
      • open_result()
    • See also

SCIENTIFIC VALIDATION

  • Validation strategy
  • Validation matrix
  • HA and QHA validation
  • Elasticity validation
  • SEISMIC validation
  • EOS validation
  • Thermoelastic scientific validation
    • Validation scope
    • Validated invariants
    • Reference results
    • Input-frame normalization
    • Interpretation
    • Literature context
  • Numerical precision and tolerances

DEVELOPMENT GUIDE

  • Developer setup
    • Development environment
    • Verify the checkout
    • Use focused loops while developing
    • Repository orientation
    • A safe first contribution
    • Working rules
  • Architecture and dependency rules
    • Layered package model
    • Allowed dependency direction
    • Active objects and passive data
    • Scientific module isolation
    • Precision and units
    • Error and warning ownership
    • Frontend ownership
  • Anatomy of a scientific module
    • Typical layout
    • Passive contracts
    • Analysis functions
    • Calculator
    • Result envelope
    • Module contract
    • Report builder
    • Plot builder
    • Persistence adapter
    • Internal and public facades
    • CLI adapter
    • Non-standard module lifecycles
  • Changing numerical and scientific code
    • Start from current behaviour
    • Units, conventions, and shapes
    • Precision policy
    • Tolerances are scientific decisions
    • Validation, extrapolation, and failure
    • Progress callbacks
    • Uncertainties and covariance
    • Optimization and performance
    • Batch sizes and sampling densities are different
    • Recommended scientific test ladder
  • Maintaining the public API
    • Supported namespaces
    • What belongs in the public API
    • Facade pattern
    • __all__ is the contract
    • Adding a public symbol
    • Capability registry
    • Result accessors
    • Versioning policy
    • Application and CLI equivalence
    • Contract verification
  • Common change recipes
    • Add a scientific option
    • Add a result field
    • Add a CLI option
    • Add a report quantity
    • Add a plot
    • Add an HDF5 field or change a schema
    • Add a public API symbol
    • Add an external-code parser
    • Add a canonical citation
    • Change a numerical default
  • Adding a new scientific module
    • Phase 1: define the scientific contract
    • Phase 2: implement reusable numerical code
    • Phase 3: add passive contracts
    • Phase 4: create the analysis layer
    • Phase 5: add the calculator
    • Phase 6: input and external interfaces
    • Phase 7: persistence
    • Phase 8: reports, plots, and exports
    • Phase 9: internal and public APIs
    • Phase 10: CLI adapter
    • Phase 11: documentation
    • Phase 12: validation matrix
    • Completion checklist
  • External-code interfaces and parsers
    • Separation of responsibilities
    • Reader lifecycle
    • File recognition and completion
    • Units and conventions
    • Structures and symmetry
    • Provenance
    • Error handling
    • Fixture strategy
    • Adding support for a new code
  • Events, observers, and progress
    • Event contracts
    • Observers
    • Calculator emission
    • Numerical progress
    • Persistent and operational events
    • Warnings
    • CLI observer behaviour
    • Testing events
  • Native HDF5 persistence and schema evolution
    • Shared envelope
    • Writer structure
    • Dataset requirements
    • Recursive values and None
    • Reader structure
    • Package version versus schema version
    • Migration policy
    • Module payload versions
    • EOS archive exception
    • Round-trip testing
    • User inspection and derived files
  • Rendering and frontend integration
    • Report pipeline
    • Numeric formatting
    • Plain-text reports
    • Rich terminal rendering
    • Plot pipeline
    • Module plot builders
    • Matplotlib backend
    • Adding a plot primitive
    • Future GUI requirements
    • Testing rendering boundaries
  • Citation registry
    • Data model
    • Key conventions
    • Register a reference
    • Module and method sets
    • Report rendering
    • Scientific-background pages
    • Adding a citation to documentation
    • Changing a reference
    • Validation
  • Testing strategy and workflow
    • Test organization
    • Complete staged run
    • Test pyramid
    • Characterization versus validation
    • Tolerance selection
    • Random and resampling methods
    • Parser tests
    • Plotting tests
    • Architecture tests
    • Static analysis
    • Distribution validation
    • Adding tests for a change
  • Documentation workflow
    • Build locally
    • Manual structure
    • Docstrings
    • CLI reference
    • API reference
    • Scientific citations
    • Tutorial assets
    • RST quality
    • Writing examples
    • Updating documentation for a code change
    • Documentation review
  • Thermoelastic architecture and maintenance
    • Worked architectural case study
    • Layer responsibilities
    • Calibration contract
    • Analysis contract
    • Passive data shapes
    • Extension rules
    • Schemas and compatibility
    • Required regression matrix
  • Packaging and platform validation
    • Build artifacts
    • Clean-install validation
    • Optional dependencies
    • Package data and examples
    • Versioning
    • Cross-platform concerns
    • Continuous integration
    • Release checkpoint
  • Change review checklist
    • Scientific contract
    • Architecture
    • Inputs and interfaces
    • Results and persistence
    • Events and errors
    • Reports, plots, and exports
    • Public API and CLI
    • Tests
    • Documentation and citations
    • Packaging
Quantas
  • Search


© Copyright 2020–2026, Gianfranco Ulian and Giovanni Valdrè.

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