Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Skip to content
ImmersX: embedded & mixed-dimensional simulation framework
Logo
ImmersX: embedded & mixed-dimensional simulation framework
  • Getting started
    • Installation and build
    • Containers
    • First run: Poisson
  • Tutorials
    • Basic problems
      • Poisson: your first ImmersX simulation
      • Static elasticity
      • Elastodynamics
      • Navier–Stokes
    • Immersed and coupled problems
      • Reduced Poisson
      • Coupled Poisson
      • Coupled Poisson–elasticity
      • Vascular-tree elasticity
      • Generate vascular trees in uniform and locally refined domains
      • Vascularize a liver from a surface and two 1D trees
    • Fiber reinforcement
      • Fiber-reinforced elastodynamics
      • Harmonic reinforcement with or without a lift
      • A 1D fiber in a 3D matrix under harmonic traction
    • MetricFlowX coupling
      • Elastostatic coupling walkthrough
      • MetricFlowX and elastodynamics
      • One vessel in a cube: a manufactured solution
  • How-to guides
    • Run an application
    • Configure a parameter file
    • Choose boundary conditions
    • Imported finite-element fields
    • Configure reduced coupling
    • Solve Poisson with a lifted modal multiplier
    • Compose static elasticity with a modal surface lift
    • Choose where a weak term is integrated
    • Integrate over a lifted geometry
    • Local co-refinement of two domains
    • Generate a physical vascular network
    • Visualize vessel areas as tubes in ParaView
    • Build a volume domain from a surface
  • Concepts
    • Overview
    • Mathematical background
    • Architecture concepts
    • MetricFlowX and elastodynamics coupling
  • Reference
    • Application reference
    • Parameter-file reference
    • Constraint and vessel API names
    • Robin boundary conditions across applications
    • Verification inputs
    • C++ API
      • Namespace ImmersX
      • Namespace ImmersX::detail
      • Namespace ImmersX::elastic_static_detail
      • Namespace ImmersX::harmonic_detail
      • Namespace ImmersX::ImmersXLA
      • Namespace ImmersX::internal
      • Namespace ImmersX::LegacyInclusions
      • Namespace ImmersX::navier_stokes_detail
      • Namespace ImmersX::ReducedFieldUtils
      • Namespace ImmersX::robin_detail
      • Namespace ImmersX::semidiscrete_detail
      • Namespace ImmersX::UtilitiesAL
      • Namespace ImmersX::Vascularization
      • Struct BoundaryConditions::State
      • Struct BoundaryConditions::Target
      • Template Struct BoundaryConormalDirection
      • Template Struct BoundaryNormalDirection
      • Struct BoundaryNormalObservable::operation_type
      • Template Struct BoundaryTangentDirection
      • Template Struct ConstraintFields
      • Template Struct ConstraintSum::Entry
      • Template Struct ConstraintSum::MakeEntryVariant
      • Template Struct CouplingPoint
      • Struct CurlOperation
      • Struct DivergenceOperation
      • Struct ExecutionComposition::CachedSecondOrderPreconditioner
      • Struct ExecutionComposition::Snapshot
      • Struct ExecutionComposition::StateSnapshot
      • Struct ExecutionComposition::StaticSchurOperators
      • Struct GradientOperation
      • Template Struct has_distributed_matrix_reinit
      • Template Struct has_distributed_partitions
      • Template Struct has_distributed_reinit
      • Template Struct has_in_place_transpose
      • Template Struct has_index_set_vector_reinit
      • Template Struct has_linear_cached_trial
      • Template Struct has_linear_cached_trial< LiftedObservable< Source, dim, surface_dim, spacedim, components > >
      • Template Struct has_matrix_compress
      • Template Struct has_raw_tensor_access
      • Template Struct has_reinit_and_copy_from
      • Template Struct has_reinit_dimensions
      • Template Struct has_set_time
      • Template Struct has_sparse_reinit
      • Template Struct has_support_source_cell_id
      • Template Struct has_support_triangulation
      • Template Struct has_transpose_apply
      • Template Struct has_vector_compress
      • Template Struct is_boundary_normal_observable
      • Template Struct is_boundary_normal_observable< BoundaryNormalObservable< ObservableType, Direction > >
      • Template Struct is_field
      • Template Struct is_field< Field< dim, spacedim, Extractor > >
      • Template Struct is_known_source
      • Template Struct is_known_source< KnownSource< Value, spacedim > >
      • Template Struct is_lifted_observable
      • Template Struct is_lifted_observable< LiftedObservable< SourceObservable, reduced_dim, surface_dim, spacedim, n_components > >
      • Template Struct is_lifted_observable< ModalLiftedObservable< FieldType > >
      • Template Struct is_lifted_observable< TestLiftedObservable< LiftedObservableType > >
      • Template Struct is_linear_observable
      • Template Struct is_linear_observable< BoundaryNormalObservable< ObservableType, Direction > >
      • Template Struct is_linear_observable< Observable< SourceFieldType, Operation > >
      • Template Struct is_observable
      • Template Struct is_observable< BoundaryNormalObservable< ObservableType, Direction > >
      • Template Struct is_observable< LiftedObservable< SourceObservable, reduced_dim, surface_dim, spacedim, n_components > >
      • Template Struct is_observable< ModalLiftedObservable< FieldType > >
      • Template Struct is_observable< Observable< SourceFieldType, Operation > >
      • Template Struct is_supported_operation
      • Template Struct is_tensor
      • Template Struct is_test_expression
      • Template Struct is_test_expression< TestExpression< SourceFieldType, Operation > >
      • Template Struct is_test_expression< TestLiftedObservable< LiftedObservableType > >
      • Template Struct is_transformed_observable
      • Template Struct is_weak_term
      • Template Struct is_weak_term< WeakTerm< ObservableType, TargetField, Support > >
      • Template Struct LiftedSourceStencil
      • Template Struct LiftedTargetWeakAssembly
      • Template Struct LiftedTargetWeakAssembly::MatrixStorage
      • Template Struct LiftedWeakAssembly
      • Template Struct NonlinearWeakAssembly
      • Struct CellInputCache::Entry
      • Template Struct NonlinearWeakAssembly::has_distributed_reinit
      • Template Struct NonlinearWeakAssembly::MatrixStorage
      • Template Struct NonlinearWeakAssembly::PhysicalSupportQuadrature
      • Struct OverlapCellQuadrature
      • Template Struct support_triangulation_dimension
      • Struct SymmetricGradientOperation
      • Struct ValueOperation
      • Template Struct WeakAffineAssembly
      • Template Struct WeakAssembly
      • Template Struct WeakAssembly::MatrixStorage
      • Template Struct WeakAssembly::PreparedMatrix
      • Struct WeakAssembly::ScratchData
      • Struct DimensionParameters
      • Template Struct ElasticityFreqFields
      • Template Struct ElasticStaticFields
      • Template Struct ElastodynamicsFields
      • Struct ElastodynamicsMaterialCoefficients
      • Struct ElastodynamicsSolver::AssemblyStatistics
      • Struct FiberReinforcedElastodynamicsResiduals
      • Struct Field::ExecutionLayout
      • Struct FieldDescriptor
      • Struct ReinforcementSupport::Point
      • Struct SurrogateOptions
      • Struct SurrogatePreconditioner
      • Struct IDAToleranceRamp
      • Template Struct ImmersedRepartitionerStorage
      • Template Struct ImmersedRepartitionerStorage< 0, spacedim >
      • Struct ImportedFiniteElementFields::Storage
      • Struct InferredIntegrationSupport
      • Struct InputFieldBinding
      • Template Struct is_integration_support
      • Template Struct is_integration_support< IntegrationSupport< dim, spacedim > >
      • Template Struct is_physical_quadrature_support
      • Template Struct IsotropicElasticityTerm
      • Template Struct IsotropicElasticStress
      • Template Struct KnownTermContext
      • Struct KnownTermRegion
      • Template Struct LiftedElasticityParameters
      • Template Struct LiftedIntegrationPoint
      • Struct LiftedIntegrationSupport::Cache
      • Template Struct LiftedModalInteraction
      • Struct LiftedPoissonParameters
      • Struct LinearAdapterParameters
      • Template Struct LinearHistoryInterpolation
      • Template Struct LinearHistoryInterpolation< double >
      • Struct LocalCoRefinementReport
      • Template Struct MaterializedOperator
      • Struct MaterialProperties
      • Template Struct NavierStokesFields
      • Struct OutputHandler::RegisteredField
      • Struct OutputHandlerParameters
      • Template Struct OverlapIntegrationSupports
      • Struct OverlapMaterialIds
      • Template Struct PointCloud
      • Template Struct PoissonFields
      • Struct ReducedFieldDescriptor
      • Template Struct RefinementParameters
      • Template Struct RefinementParameters< 0 >
      • Template Struct SaddlePointMetadata
      • Struct SecondOrderPair
      • Struct SecondOrderPreconditionerData
      • Struct SemiDiscreteModel::OperatorEntry
      • Struct SemiDiscreteModel::ResidualEntry
      • Struct StateHistory::Snapshot
      • Template Struct TensorProductLiftParameters
      • Template Struct TensorProductLiftPoint
      • Template Struct TensorProductSpaceParameters
      • Struct ApplicationParameters
      • Struct CalibrationAttempt
      • Struct CalibrationParameters
      • Struct CalibrationReport
      • Struct CompanionParameters
      • Struct CoverageParameters
      • Struct DiscretizationCell
      • Struct DiscretizationParameters
      • Struct DiscretizationResult
      • Struct GenerationResult
      • Struct GrowthStatistics
      • Struct GrowthWork
      • Struct MeshLengthScale
      • Struct NetworkArchive
      • Struct NetworkData
      • Struct Node
      • Struct Parameters
      • Struct ReferenceConditions
      • Struct ReferenceParameters
      • Struct ReferenceResult
      • Struct ScaledVesselMeasure
      • Struct Terminal
      • Struct TerminalPair
      • Struct TerminalTriplet
      • Struct Territory
      • Struct TerritoryReference
      • Struct TissueIntegrationParameters
      • Struct TissueMetrics
      • Struct ValidationIssue
      • Struct ValidationReport
      • Struct Vessel
      • Struct VesselCell
      • Struct VesselReference
      • Template Struct WeakTerm::Pairing
      • Struct WeakTermRegion
      • Template Class AlgebraicFieldContributor
      • Template Class BlockPreconditionerAugmentedLagrangian
      • Template Class BoundaryConditions
      • Template Class BoundaryIntegrationSupport
      • Template Class BoundaryNormalObservable
      • Template Class Constraint
      • Template Class ConstraintSum
      • Template Class CoupledElasticityProblem
      • Class CumulativeReductionControl
      • Class CumulativeSolverControl
      • Template Class BlockFieldLayout
      • Template Class ExecutionComposition
      • Template Class NonlinearWeakAssembly::CellInputCache
      • Template Class DistributedLiftedQuadrature
      • Template Class Domain
      • Template Class DomainParameters
      • Template Class ElasticityExplicit
      • Template Class ElasticityFreqProblem
      • Template Class ElasticityFreqProblemParameters
      • Template Class ElasticityProblem
      • Template Class ElasticityProblemParameters
      • Template Class ElasticStaticParameters
      • Template Class ElasticStaticProblem
      • Class ElastodynamicsMaterialParameters
      • Template Class ElastodynamicsParameters
      • Template Class ElastodynamicsSolver
      • Template Class EvaluationContext
      • Template Class FiberReinforcedElasticityFreq
      • Template Class FiberReinforcedElasticityFreqParameters
      • Template Class FiberReinforcedElastodynamics
      • Template Class FiberReinforcedElastodynamicsParameters
      • Template Class Field
      • Class FieldId
      • Template Class FiniteElementSpace
      • Template Class FiniteElementSpaceParameters
      • Template Class FiniteElementSpaceView
      • Template Class FiniteElementSubspaceView
      • Class FixedStepParameters
      • Template Class ReinforcementSupport
      • Class HistoryGroupId
      • Class IDAParameters
      • Template Class ImmersedRepartitioner
      • Template Class ImportedFiniteElementFields
      • Class ImportedFiniteElementFields::FieldView
      • Template Class Inclusions
      • Class InputFieldSelector
      • Template Class IntegrationSupport
      • Template Class KnownSource
      • Template Class KnownTerm
      • Template Class LagrangeMultiplierConstraintSolver
      • Class LagrangeMultiplierConstraintSolver::SchurComplementOperator
      • Template Class LagrangeMultiplierSchurSolver
      • Class LagrangeMultiplierSchurSolver::SchurComplementOperator
      • Template Class LiftedElasticity
      • Template Class LiftedIntegrationSupport
      • Template Class LiftedMultiplierInteraction
      • Template Class LiftedObservable
      • Class LiftedPoissonOutputState
      • Template Class LinearAdapter
      • Template Class LocalCoRefinement
      • Template Class MatrixFreeCouplingOperator
      • Template Class ModalLiftedObservable
      • Template Class ModulatedParsedFunction
      • Template Class NavierStokesParameters
      • Template Class NavierStokesSolver
      • Template Class NormalGeometry
      • Template Class NormalQuantity
      • Template Class NormalWeakTerm
      • Template Class Observable
      • Template Class OutputHandler
      • Template Class OverlapContinuityConstraint
      • Template Class ParticleCoupling
      • Template Class ParticleCouplingParameters
      • Template Class PoissonParameters
      • Template Class PoissonProblem
      • Template Class PoissonSolver
      • Template Class ProblemHandle
      • Template Class ProblemParameters
      • Template Class ReducedCoupling
      • Template Class ReducedCouplingParameters
      • Template Class ReducedFieldValues
      • Template Class ReducedPoisson
      • Template Class ReducedPoissonParameters
      • Template Class ReferenceCrossSection
      • Template Class ReferenceCrossSectionParameters
      • Template Class RigidBodyMotion
      • Template Class SecondOrderBlockPreconditioner
      • Template Class SemidiscreteBuilder
      • Template Class SemiDiscreteModel
      • Template Class SemidiscreteTerm
      • Template Class StateAccessor
      • Template Class StateHistory
      • Template Class StateHistoryRegistry
      • Class StateLayout
      • Template Class StateView
      • Class SymbolicExpressionKernel
      • Class SymbolicFieldEvaluator
      • Template Class TensorProductLift
      • Template Class TensorProductLiftSupport
      • Template Class TensorProductSpace
      • Template Class TensorProductSpace< 0, dim, spacedim, n_components >
      • Class TermSelection
      • Template Class TestExpression
      • Template Class TestLiftedObservable
      • Class TimeIntervalParameters
      • Class TimeParameters
      • Template Class BlockPreconditionerAugmentedLagrangian
      • Template Class WeakTerm
      • Enum CouplingType
      • Enum ElasticityModel
      • Enum FieldAssociation
      • Enum LinearPreconditioner
      • Enum LinearSolver
      • Enum PointCloudDistribution
      • Enum TermTreatment
      • Enum TimeMode
      • Enum CalibrationStatus
      • Enum GrowthOperation
      • Enum LengthScalePolicy
      • Enum Port
      • Enum Provenance
      • Enum System
      • Template Function ImmersX::adjust_grids
      • Template Function ImmersX::affine_field_term
      • Template Function ImmersX::algebraic_field
      • Template Function ImmersX::curl(const FieldType&)
      • Template Function ImmersX::curl(const Observable<SourceFieldType, Operation>&)
      • Template Function ImmersX::curl(const TestExpression<SourceFieldType, Operation>&)
      • Function ImmersX::declare_dimension_parameters
      • Template Function ImmersX::detail::add_modal_outside_mass
      • Template Function ImmersX::detail::apply_stencils(const std::vector<PointType>&, const std::vector<TargetIndexType>&, const dealii::IndexSet&, const dealii::IndexSet&, const dealii::AffineConstraints<double> *, const MPI_Comm, const SourceVectorType&, TargetVectorType&, DofIndices, Coefficient, const bool, const bool)
      • Template Function ImmersX::detail::apply_stencils(const std::vector<PointType>&, const std::vector<TargetIndexType>&, const dealii::IndexSet&, const dealii::IndexSet&, const dealii::IndexSet&, const dealii::IndexSet&, const dealii::AffineConstraints<double> *, const MPI_Comm, const SourceVectorType&, TargetVectorType&, DofIndices, Coefficient, const bool, const bool)
      • Template Function ImmersX::detail::apply_stencils_transpose
      • Template Function ImmersX::detail::apply_tensor_product_lift(const std::vector<PointType>&, const std::vector<IndexType>&, const std::vector<std::vector<IndexType>>&, const VectorType&, VectorType&, const bool, const bool)
      • Template Function ImmersX::detail::apply_tensor_product_lift(const std::vector<PointType>&, const std::vector<IndexType>&, const std::vector<std::vector<IndexType>>&, const VectorType&, VectorType&, const bool, const bool, const dealii::IndexSet&, const dealii::IndexSet&, const MPI_Comm)
      • Template Function ImmersX::detail::assemble_modal_gram
      • Template Function ImmersX::detail::assert_homogeneous_weak_constraints
      • Template Function ImmersX::detail::assert_lifted_support_matches
      • Template Function ImmersX::detail::assert_locally_uniform_reference_cells
      • Template Function ImmersX::detail::assert_uniform_reference_cells
      • Function ImmersX::detail::check_replicated_matrix_size
      • Template Function ImmersX::detail::clone_matrix
      • Template Function ImmersX::detail::compress_weak_matrix
      • Template Function ImmersX::detail::compress_weak_vector
      • Template Function ImmersX::detail::constraint_entry_index
      • Template Function ImmersX::detail::copy_matrix
      • Template Function ImmersX::detail::evaluate_stencil(const VectorType&, const std::vector<dealii::types::global_dof_index>&, const std::vector<double>&)
      • Template Function ImmersX::detail::evaluate_stencil(const VectorType&, const PointType&, DofIndices, Coefficient)
      • Template Function ImmersX::detail::flatten_value
      • Template Function ImmersX::detail::initialize_weak_matrix
      • Template Function ImmersX::detail::initialize_weak_vector
      • Template Function ImmersX::detail::local_physical_reference_cells
      • Template Function ImmersX::detail::make_matrix_with_sparsity
      • Template Function ImmersX::detail::make_multiplier_metric
      • Template Function ImmersX::detail::make_normal_load_operator
      • Template Function ImmersX::detail::make_relevant_stencil_source
      • Template Function ImmersX::detail::make_sparsity
      • Template Function ImmersX::detail::make_tensor_product_quadrature
      • Template Function ImmersX::detail::make_transformed_observable
      • Template Function ImmersX::detail::materialize_replicated_operator
      • Template Function ImmersX::detail::n_stored_components
      • Function ImmersX::detail::normalize_lift_subsection
      • Template Function ImmersX::detail::reference_to_physical_rotation
      • Template Function ImmersX::detail::reinit_known_vector
      • Template Function ImmersX::detail::replicated_vector_operator
      • Function ImmersX::detail::report_retained_quadrature_points_once
      • Template Function ImmersX::detail::set_function_time
      • Template Function ImmersX::detail::set_matrix_values
      • Template Function ImmersX::detail::sum_matrices
      • Template Function ImmersX::detail::support_lifted_point
      • Template Function ImmersX::detail::support_point_weight
      • Template Function ImmersX::detail::support_quadrature
      • Template Function ImmersX::detail::transform_representative_point
      • Template Function ImmersX::detail::transpose_matrix
      • Template Function ImmersX::detail::unflatten_value
      • Template Function ImmersX::detail::uniform_reference_cell
      • Template Function ImmersX::detail::weak_vector_is_zero
      • Template Function ImmersX::divergence(const FieldType&)
      • Template Function ImmersX::divergence(const Observable<SourceFieldType, Operation>&)
      • Template Function ImmersX::divergence(const TestExpression<SourceFieldType, Operation>&)
      • Function ImmersX::domain_subsection
      • Function ImmersX::elastic_static_detail::normalize_subsection
      • Template Function ImmersX::evaluate_thickness_values
      • Template Function ImmersX::fe_space(const dealii::DoFHandler<dim, spacedim>&, const dealii::Mapping<dim, spacedim>&, const dealii::AffineConstraints<double>&, const dealii::IndexSet *)
      • Template Function ImmersX::fe_space(const dealii::DoFHandler<dim, spacedim>&, const dealii::Mapping<dim, spacedim>&, const dealii::AffineConstraints<double>&, const dealii::IndexSet&)
      • Template Function ImmersX::finite_element_space_view(const dealii::DoFHandler<dim, spacedim>&, const dealii::Mapping<dim, spacedim>&, const dealii::AffineConstraints<double>&, const dealii::IndexSet *)
      • Template Function ImmersX::finite_element_space_view(const dealii::DoFHandler<dim, spacedim>&, const dealii::Mapping<dim, spacedim>&, const dealii::AffineConstraints<double>&, const dealii::IndexSet&)
      • Template Function ImmersX::frozen
      • Function ImmersX::get_dimension_parameters(const ParameterHandler&)
      • Function ImmersX::get_dimension_parameters(const std::string&)
      • Template Function ImmersX::gradient(const FieldType&)
      • Template Function ImmersX::gradient(const Observable<SourceFieldType, Operation>&)
      • Template Function ImmersX::gradient(const TestExpression<SourceFieldType, Operation>&)
      • Template Function ImmersX::harmonic_detail::add_lifted_continuity
      • Template Function ImmersX::harmonic_detail::add_material
      • Template Function ImmersX::harmonic_detail::add_shared_reinforcement
      • Template Function ImmersX::harmonic_detail::add_shared_robin
      • Template Function ImmersX::harmonic_detail::add_surrogate_material
      • Template Function ImmersX::harmonic_detail::add_surrogate_terms
      • Template Function ImmersX::harmonic_detail::make_reinforcement_boundary_supports
      • Template Function ImmersX::harmonic_detail::make_reinforcement_support
      • Template Function ImmersX::harmonic_detail::make_surrogate_inverse
      • Template Function ImmersX::harmonic_detail::phase_component
      • Template Function ImmersX::initialize_elastodynamics_adapter_state
      • Function ImmersX::initialize_parameters
      • Function ImmersX::initialize_parameters_from_string
      • Template Function ImmersX::internal::co_refine_meshes
      • Template Function ImmersX::isotropic_elasticity_term
      • Template Function ImmersX::known_function
      • Template Function ImmersX::known_term(const KnownSource<Value, spacedim>&, const TestExpression&)
      • Template Function ImmersX::known_term(const Observable<SourceFieldType, Operation>&, const TestExpression&)
      • Template Function ImmersX::known_vector_function
      • Function ImmersX::LegacyInclusions::fourier_to_reference_indices
      • Function ImmersX::LegacyInclusions::fourier_to_reference_scale
      • Function ImmersX::LegacyInclusions::read_2d
      • Function ImmersX::LegacyInclusions::read_3d
      • Template Function ImmersX::lift(const SourceObservable&, const TensorProductLift<reduced_dim, surface_dim, spacedim, n_components>&)
      • Template Function ImmersX::lift(const SourceObservable&, const TensorProductLift<reduced_dim, surface_dim, spacedim, n_components>&, SourceThicknessEvaluator<spacedim>)
      • Template Function ImmersX::lift(const SourceObservable&, const TensorProductLift<reduced_dim, surface_dim, spacedim, n_components>&, const ThicknessObservable&)
      • Template Function ImmersX::lifted_modal_constraint
      • Template Function ImmersX::lifted_modal_load(const std::vector<Lifted>&, const Function&, const Support&)
      • Template Function ImmersX::lifted_modal_load(const Lifted&, const Function&, const unsigned int)
      • Template Function ImmersX::make_amg_preconditioner
      • Template Function ImmersX::make_constraint(ConstraintSum<Terms…>, Rhs&&)
      • Template Function ImmersX::make_constraint(ConstraintSum<Terms…>)
      • Template Function ImmersX::make_constraint(Term)
      • Template Function ImmersX::make_constraint(Term, Rhs&&)
      • Template Function ImmersX::make_continuity_constraint
      • Template Function ImmersX::make_lift(const SourceObservable&, const TensorProductLift<reduced_dim, surface_dim, spacedim, n_components>&)
      • Template Function ImmersX::make_lift(const SourceObservable&, const TensorProductLift<reduced_dim, surface_dim, spacedim, n_components>&, SourceThicknessEvaluator<spacedim>)
      • Template Function ImmersX::make_lift(const SourceObservable&, const TensorProductLift<reduced_dim, surface_dim, spacedim, n_components>&, const ThicknessObservable&)
      • Template Function ImmersX::make_local_preconditioner
      • Template Function ImmersX::make_overlap_supports(const IntegrationSupport<dim, spacedim>&, const dealii::Mapping<dim, spacedim>&, const dealii::Quadrature<dim>&, const PointRange&, const dealii::GridTools::Cache<spacedim, spacedim>&, const double)
      • Template Function ImmersX::make_overlap_supports(const IntegrationSupport<dim, spacedim>&, const dealii::Mapping<dim, spacedim>&, const dealii::Quadrature<dim>&, const dealii::GridTools::Cache<spacedim, spacedim>&, const double)
      • Template Function ImmersX::make_replicated_direct_preconditioner
      • Template Function ImmersX::matrix_operator(const MatrixType&)
      • Template Function ImmersX::matrix_operator(std::shared_ptr<MatrixType>)
      • Function ImmersX::modal_data_evaluator
      • Template Function ImmersX::modal_lift
      • Template Function ImmersX::modal_radius
      • Template Function ImmersX::navier_stokes_detail::make_block_field
      • Template Function ImmersX::normal
      • Template Function ImmersX::operator*(const double, const MaterializedOperator<VectorType, MatrixType>&)
      • Template Function ImmersX::operator*(const MaterializedOperator<VectorType, MatrixType>&, const double)
      • Template Function ImmersX::operator*(Left, Right)
      • Template Function ImmersX::operator*(const double, Expression)
      • Template Function ImmersX::operator*(Expression, const double)
      • Template Function ImmersX::operator*(const double, TestExpression<SourceFieldType, Operation>)
      • Template Function ImmersX::operator*(TestExpression<SourceFieldType, Operation>, const double)
      • Template Function ImmersX::operator*(Observable<SourceFieldType, detail::GradientOperation>, BoundaryNormalDirection<dim, spacedim>)
      • Template Function ImmersX::operator*(Observable<SourceFieldType, detail::GradientOperation>, BoundaryConormalDirection<dim, spacedim>)
      • Template Function ImmersX::operator*(Observable<SourceFieldType, detail::GradientOperation>, BoundaryTangentDirection<dim, spacedim>)
      • Template Function ImmersX::operator*(Quantity, NormalGeometry<Surface>)
      • Template Function ImmersX::operator*(Trial, TestExpression<FieldType, Operation>)
      • Template Function ImmersX::operator*(WeakTerm<Trial, Test, Support>, IntegrationSupport<dim, spacedim>)
      • Template Function ImmersX::operator*(WeakTerm<Trial, Test, CurrentSupport>, Support)
      • Template Function ImmersX::operator*(WeakTerm<Trial, Test, Support>, BoundaryIntegrationSupport<dim, spacedim>)
      • Template Function ImmersX::operator+(Lhs, Rhs)
      • Template Function ImmersX::operator+(ConstraintSum<LhsTerms…>, ConstraintSum<RhsTerms…>)
      • Template Function ImmersX::operator+(ConstraintSum<Terms…>, NewTerm)
      • Template Function ImmersX::operator+(Left, Right)
      • Template Function ImmersX::operator-(Lhs, Rhs)
      • Template Function ImmersX::operator-(ConstraintSum<LhsTerms…>, ConstraintSum<RhsTerms…>)
      • Template Function ImmersX::operator-(ConstraintSum<Terms…>, NewTerm)
      • Template Function ImmersX::operator-(Left, Right)
      • Template Function ImmersX::operator-(Expression)
      • Template Function ImmersX::operator/
      • Template Function ImmersX::output_augmented_lagrangian_iteration_summary
      • Template Function ImmersX::payload_free
      • Template Function ImmersX::read_grid_and_cad_files
      • Template Function ImmersX::ReducedFieldUtils::data_to_dealii_vector
      • Template Function ImmersX::ReducedFieldUtils::distributed_to_serial_vertex_indices
      • Template Function ImmersX::ReducedFieldUtils::field_catalog_to_finite_element
      • Template Function ImmersX::ReducedFieldUtils::get_block_indices
      • Template Function ImmersX::ReducedFieldUtils::read_field_values
      • Template Function ImmersX::ReducedFieldUtils::serial_vector_to_distributed_vector(const dealii::DoFHandler<dim, spacedim>&, const dealii::DoFHandler<dim, spacedim>&, const dealii::Vector<double>&, dealii::LinearAlgebra::distributed::Vector<double>&)
      • Template Function ImmersX::ReducedFieldUtils::serial_vector_to_distributed_vector(const dealii::DoFHandler<dim, spacedim>&, const dealii::DoFHandler<dim, spacedim>&, const dealii::Vector<double>&, ImmersXLA::MPI::Vector&)
      • Template Function ImmersX::refine_space_around_points
      • Function ImmersX::reset_parameter_handler_to_root
      • Template Function ImmersX::robin_boundary_term
      • Template Function ImmersX::robin_detail::add_face_terms
      • Template Function ImmersX::robin_detail::assert_disjoint_boundary_ids
      • Function ImmersX::robin_detail::assert_valid_boundary_data
      • Function ImmersX::robin_detail::expression_depends_on_time
      • Template Function ImmersX::robin_detail::register_parameter_overrides
      • Template Function ImmersX::robin_detail::update_elasticity_springs
      • Function ImmersX::run_lifted_poisson
      • Template Function ImmersX::scalar_field(const FiniteElementSpaceView<dim, spacedim>&, const std::string&)
      • Template Function ImmersX::scalar_field(const FiniteElementSpaceView<dim, spacedim>&, StateLayout&, const std::string&)
      • Template Function ImmersX::semidiscrete_detail::add_matrix_product
      • Template Function ImmersX::semidiscrete_detail::constrained_identity_operator
      • Template Function ImmersX::semidiscrete_detail::constrained_matrix_identity_operator
      • Template Function ImmersX::semidiscrete_detail::constrained_matrix_operator
      • Template Function ImmersX::semidiscrete_detail::constrained_matrix_operator_with_identity
      • Template Function ImmersX::semidiscrete_detail::constrained_operation
      • Template Function ImmersX::semidiscrete_detail::constrained_operator
      • Template Function ImmersX::semidiscrete_detail::constrained_operator_with_identity
      • Template Function ImmersX::semidiscrete_detail::constrained_residual
      • Template Function ImmersX::semidiscrete_detail::mixed_constrained_matrix_operator
      • Template Function ImmersX::semidiscrete_detail::mixed_constrained_operation
      • Template Function ImmersX::semidiscrete_detail::mixed_constrained_operator
      • Template Function ImmersX::semidiscrete_detail::zero_constrained
      • Template Function ImmersX::semidiscrete_detail::zero_mixed_constrained
      • Template Function ImmersX::set_overlap_material_ids(dealii::Triangulation<dim, spacedim>&, const dealii::GridTools::Cache<spacedim, spacedim>&, PointGenerator&&, const OverlapMaterialIds&, const double)
      • Template Function ImmersX::set_overlap_material_ids(dealii::Triangulation<dim, spacedim>&, const dealii::Mapping<dim, spacedim>&, const dealii::Quadrature<dim>&, const dealii::GridTools::Cache<spacedim, spacedim>&, const OverlapMaterialIds&, const double)
      • Template Function ImmersX::sqrt
      • Template Function ImmersX::static_elasticity_nitsche
      • Template Function ImmersX::static_elasticity_robin
      • Template Function ImmersX::static_elasticity_term
      • Template Function ImmersX::symmetric_gradient(const FieldType&)
      • Template Function ImmersX::symmetric_gradient(const Observable<SourceFieldType, Operation>&)
      • Template Function ImmersX::symmetric_gradient(const TestExpression<SourceFieldType, Operation>&)
      • Template Function ImmersX::test(const FieldType&)
      • Template Function ImmersX::test(const LiftedObservableType&)
      • Function ImmersX::throw_unsupported_dimension_combination
      • Template Function ImmersX::transform
      • Template Function ImmersX::transpose_operator
      • Template Function ImmersX::UtilitiesAL::create_augmented_block
      • Template Function ImmersX::UtilitiesAL::set_null_space
      • Template Function ImmersX::value(const FieldType&)
      • Template Function ImmersX::value(const Observable<SourceFieldType, Operation>&)
      • Template Function ImmersX::value(const TestExpression<SourceFieldType, Operation>&)
      • Function ImmersX::Vascularization::count_work
      • Function ImmersX::Vascularization::create_triangulation(const NetworkData&, const DiscretizationResult&, dealii::Triangulation<1, 3>&)
      • Function ImmersX::Vascularization::create_triangulation(const NetworkData&, const DiscretizationResult&, dealii::Triangulation<1, 3>&, const std::set<Id>&, const std::function<std::array<dealii::types::boundary_id, 2>(const VesselCell&, const Vessel&)>&)
      • Function ImmersX::Vascularization::demand_flow_conditions(const NetworkData&, const std::map<Id, double>&, double, const std::vector<Id>&, MPI_Comm)
      • Function ImmersX::Vascularization::demand_flow_conditions(const NetworkData&, const std::map<Id, double>&, const std::map<System, double>&, const std::vector<Id>&, MPI_Comm)
      • Function ImmersX::Vascularization::discretize
      • Function ImmersX::Vascularization::generate(const dealii::Triangulation<3>&, const dealii::Mapping<3>&, const NetworkData&, const Parameters&, MPI_Comm)
      • Function ImmersX::Vascularization::generate(const dealii::Triangulation<3>&, const dealii::Mapping<3>&, const NetworkData&, const Parameters&, MPI_Comm, const std::vector<Territory>&, const std::vector<TerminalPair>&)
      • Function ImmersX::Vascularization::generate(const dealii::Triangulation<3>&, const dealii::Mapping<3>&, const NetworkData&, const Parameters&, MPI_Comm, const std::vector<Territory>&, const std::vector<TerminalPair>&, const std::vector<TerminalTriplet>&)
      • Function ImmersX::Vascularization::length
      • Function ImmersX::Vascularization::load_network
      • Function ImmersX::Vascularization::measure_scaled_vessels
      • Function ImmersX::Vascularization::measure_tissue(const dealii::Triangulation<3>&, const dealii::Mapping<3>&, const NetworkData&, const DiscretizationResult&, const CoverageParameters&, MPI_Comm)
      • Function ImmersX::Vascularization::measure_tissue(const dealii::Triangulation<3>&, const dealii::Mapping<3>&, const NetworkData&, const DiscretizationResult&, const CoverageParameters&, MPI_Comm, const MeshLengthScale&)
      • Function ImmersX::Vascularization::mesh_length_scale
      • Function ImmersX::Vascularization::murray_radius
      • Function ImmersX::Vascularization::operator-
      • Function ImmersX::Vascularization::physical_reference
      • Function ImmersX::Vascularization::redistribute
      • Function ImmersX::Vascularization::reference_pressure
      • Function ImmersX::Vascularization::resistance
      • Function ImmersX::Vascularization::run
      • Function ImmersX::Vascularization::save_network(const std::filesystem::path&, const NetworkData&, const std::vector<Territory>&, const std::vector<TerminalPair>&, MPI_Comm)
      • Function ImmersX::Vascularization::save_network(const std::filesystem::path&, const NetworkData&, const std::vector<Territory>&, const std::vector<TerminalPair>&, const std::vector<TerminalTriplet>&, MPI_Comm)
      • Function ImmersX::Vascularization::solve_reference(const NetworkData&, const std::vector<TerminalPair>&, const ReferenceConditions&, const ReferenceParameters&, MPI_Comm)
      • Function ImmersX::Vascularization::solve_reference(const NetworkData&, const std::vector<TerminalPair>&, const std::vector<TerminalTriplet>&, const ReferenceConditions&, const ReferenceParameters&, MPI_Comm)
      • Function ImmersX::Vascularization::subdivide
      • Function ImmersX::Vascularization::validate_data
      • Function ImmersX::Vascularization::validate_terminal_pairs
      • Function ImmersX::Vascularization::volume
      • Template Function ImmersX::vector_field(const FiniteElementSpaceView<dim, spacedim>&, const std::string&)
      • Template Function ImmersX::vector_field(const FiniteElementSpaceView<dim, spacedim>&, StateLayout&, const std::string&)
      • Template Function ImmersX::weak_term(Trial, Test)
      • Template Function ImmersX::weak_term(Trial, Test, IntegrationSupport<dim, spacedim>)
      • Template Function ImmersX::weak_term(Trial, Test, BoundaryIntegrationSupport<dim, spacedim>)
      • Template Function ImmersX::weak_term(Trial, Test, Support)
      • Template Function ImmersX::weak_term(NormalQuantity<Quantity, Surface>, TargetField)
      • Template Function ImmersX::weak_term(NormalQuantity<Quantity, Surface>, TestExpression<SourceFieldType, Operation>)
      • Variable ImmersX::detail::dependent_false
      • Variable ImmersX::detail::is_scalar_value
      • Variable ImmersX::detail::is_supported_transport_value
      • Variable ImmersX::Vascularization::growth_operation_names
      • Variable ImmersX::Vascularization::invalid_id
      • Define augmented_lagrangian_prec_h
      • Typedef ImmersX::detail::OverlapQuadraturePartition
      • Typedef ImmersX::FieldCatalog
      • Typedef ImmersX::FixedThicknessEvaluator
      • Typedef ImmersX::ImportedFieldView
      • Typedef ImmersX::LiftedPoissonAdapter
      • Typedef ImmersX::LiftedPoissonState
      • Typedef ImmersX::LiftedPoissonVector
      • Typedef ImmersX::LinearSolverParameters
      • Typedef ImmersX::ModalDataEvaluator
      • Typedef ImmersX::SourceThicknessEvaluator
      • Typedef ImmersX::Vascularization::CellVessels
      • Typedef ImmersX::Vascularization::Id
      • Typedef ImmersX::Vascularization::VenousParameters
      • Typedef ImmersX::VesselElasticityProblem
      • Typedef ObserverPointer
  • Integrations
    • Coral backend
    • dealiiX-platform integration
  • Performance
    • Nonmatching particle penalty comparison
    • Elastodynamics performance
    • Cost of the one-vessel elastodynamics MMS
    • Performance pipeline
  • Development
    • Contributing
    • Testing
      • Test a documented workflow
    • Documentation
    • Repository layout
    • Extension guides
      • Constraints and interactions
      • Residual execution with IDA and KINSOL
    • Application coupling roadmap
    • Incremental vascular growth: execution and measured cost
  • About ImmersX
    • References
    • Funding
    • Changelog
Back to top
View this page
Edit this page

Extension guides¶

Read the architecture concepts before extending Problems, weak terms, constraints, or execution adapters. These guides explain the current extension points and solver lifecycle.

  • Constraints and interactions
  • Residual execution with IDA and KINSOL
Next
Constraints and interactions
Previous
Repository layout
Copyright ©
Made with Sphinx and @pradyunsg's Furo