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
    • First run: Poisson
  • How-to guides
    • Run an application
    • Imported finite-element fields
    • Configure a parameter file
    • Choose boundary conditions
    • Configure reduced coupling
    • Test a documented workflow
    • Vascular-tree elasticity
  • Tutorials
    • Poisson: your first ImmersX simulation
    • Static elasticity
    • Elastodynamics
    • Reduced Poisson
    • Coupled Poisson
    • Coupled Poisson–elasticity
    • Fiber-reinforced elastodynamics
    • Navier–Stokes
    • Tutorial 01: area-to-wall kinematics
    • Tutorial 02: static two-way vessel-wall equilibrium
    • Tutorial 03: spatial manufactured vessel-wall coupling
    • Tutorial 04: transient two-way manufactured solution
  • Concepts
    • Overview
    • Mathematical Background
    • Architecture concepts
    • Application coupling roadmap
  • Reference
    • Application reference
    • Parameter-file reference
    • Verification inputs
    • Library Reference
      • Namespace ImmersX
      • Namespace ImmersX::detail
      • Namespace ImmersX::elastic_static_detail
      • Namespace ImmersX::ImmersXLA
      • Namespace ImmersX::LegacyInclusions
      • Namespace ImmersX::navier_stokes_detail
      • Namespace ImmersX::ReducedFieldUtils
      • Namespace ImmersX::semidiscrete_detail
      • Namespace ImmersX::UtilitiesAL
      • Struct ConstraintFields
      • Template Struct ConstraintSum::Entry
      • Template Struct ConstraintSum::MakeEntryVariant
      • Template Struct CouplingPoint
      • Struct CurlOperation
      • Struct DivergenceOperation
      • Struct ExecutionComposition::Snapshot
      • Struct ExecutionComposition::StateSnapshot
      • Struct GradientOperation
      • Template Struct has_distributed_matrix_reinit
      • Template Struct has_distributed_partitions
      • Template Struct has_in_place_transpose
      • 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_sparse_reinit
      • Template Struct has_transpose_apply
      • Template Struct is_field
      • Template Struct is_field< Field< dim, spacedim, Extractor > >
      • Template Struct is_lifted_observable
      • Template Struct is_lifted_observable< LiftedObservable< SourceObservable, reduced_dim, surface_dim, spacedim, n_components > >
      • Template Struct is_lifted_observable< TestLiftedObservable< LiftedObservableType > >
      • Template Struct is_linear_observable
      • Template Struct is_linear_observable< Observable< SourceFieldType, Operation > >
      • Template Struct is_observable
      • Template Struct is_observable< LiftedObservable< SourceObservable, reduced_dim, surface_dim, spacedim, n_components > >
      • 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 > >
      • Template Struct LiftedSourceStencil
      • Template Struct LiftedTargetWeakAssembly
      • Template Struct LiftedTargetWeakAssembly::MatrixStorage
      • Template Struct LiftedWeakAssembly
      • Template Struct NonlinearWeakAssembly
      • Template Struct NonlinearWeakAssembly::has_distributed_reinit
      • Template Struct NonlinearWeakAssembly::MatrixStorage
      • Struct SymmetricGradientOperation
      • Struct ValueOperation
      • Template Struct WeakAssembly
      • Template Struct WeakAssembly::MatrixStorage
      • Template Struct WeakAssembly::PreparedMatrix
      • Struct DimensionParameters
      • Struct ElasticStaticFields
      • Struct ElastodynamicsFields
      • Struct FiberReinforcedElastodynamicsResiduals
      • Struct Field::ExecutionLayout
      • Struct FieldDescriptor
      • Template Struct ImmersedRepartitionerStorage
      • Template Struct ImmersedRepartitionerStorage< 0, spacedim >
      • Struct ImportedFiniteElementFields::Storage
      • Struct InputFieldBinding
      • Struct LinearAdapterParameters
      • Template Struct LinearHistoryInterpolation
      • Template Struct LinearHistoryInterpolation< double >
      • Template Struct MaterializedOperator
      • Struct MaterialProperties
      • Template Struct NavierStokesFields
      • Template Struct PointCloud
      • Template Struct PoissonFields
      • Struct ReducedFieldDescriptor
      • Template Struct RefinementParameters
      • Template Struct RefinementParameters< 0 >
      • Template Struct SaddlePointMetadata
      • Struct SemiDiscreteModel::OperatorEntry
      • Struct SemiDiscreteModel::ResidualEntry
      • Struct StateHistory::Snapshot
      • Template Struct TensorProductLiftParameters
      • Template Struct TensorProductLiftPoint
      • Template Struct TensorProductSpaceParameters
      • Template Struct WeakTerm::Pairing
      • Template Class BlockPreconditionerAugmentedLagrangian
      • Template Class Constraint
      • Template Class ConstraintSum
      • Class CumulativeReductionControl
      • Class CumulativeSolverControl
      • Template Class BlockFieldLayout
      • Template Class ExecutionComposition
      • Template Class DistributedLiftedQuadrature
      • Template Class ElasticityProblem
      • Template Class ElasticityProblemParameters
      • Template Class ElasticStaticParameters
      • Template Class ElasticStaticProblem
      • Template Class ElastodynamicsParameters
      • Template Class ElastodynamicsSolver
      • Template Class EvaluationContext
      • Template Class FESpaceView
      • Template Class FESubspaceView
      • Template Class FiberReinforcedElastodynamics
      • Template Class FiberReinforcedElastodynamicsParameters
      • Template Class Field
      • Class FieldId
      • Class FixedStepParameters
      • Class HistoryGroupId
      • Class IDAParameters
      • Template Class ImmersedRepartitioner
      • Template Class ImportedFiniteElementFields
      • Class ImportedFiniteElementFields::FieldView
      • Template Class Inclusions
      • Class InputFieldSelector
      • Template Class LagrangeMultiplierConstraintSolver
      • Class LagrangeMultiplierConstraintSolver::SchurComplementOperator
      • Template Class LagrangeMultiplierSchurSolver
      • Class LagrangeMultiplierSchurSolver::SchurComplementOperator
      • Template Class LiftedObservable
      • Template Class LinearAdapter
      • Template Class MatrixFreeCouplingOperator
      • Template Class MetricFlowXVesselWallConstraint
      • Template Class ModulatedParsedFunction
      • Template Class NavierStokesParameters
      • Template Class NavierStokesSolver
      • Template Class NormalGeometry
      • Template Class NormalQuantity
      • Template Class NormalWeakTerm
      • Template Class Observable
      • Template Class OwnedFESpace
      • 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 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
      • Template Function ImmersX::adjust_grids
      • 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::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::clone_matrix
      • Template Function ImmersX::detail::compress_weak_matrix
      • 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::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::n_stored_components
      • Function ImmersX::detail::normalize_lift_subsection
      • Template Function ImmersX::detail::reference_to_physical_rotation
      • Template Function ImmersX::detail::set_matrix_values
      • Template Function ImmersX::detail::sum_matrices
      • Template Function ImmersX::detail::transform_representative_point
      • Template Function ImmersX::detail::transpose_matrix
      • Template Function ImmersX::detail::unflatten_value
      • Template Function ImmersX::divergence(const FieldType&)
      • Template Function ImmersX::divergence(const Observable<SourceFieldType, Operation>&)
      • Template Function ImmersX::divergence(const TestExpression<SourceFieldType, Operation>&)
      • 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::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::initialize_elastodynamics_adapter_state
      • Function ImmersX::initialize_parameters
      • Function ImmersX::initialize_parameters_from_string
      • 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::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_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_local_preconditioner
      • Template Function ImmersX::matrix_operator
      • 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*(Quantity, NormalGeometry<Surface>)
      • 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::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::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::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>&)
      • Template Function ImmersX::weak_term(Trial, Test)
      • 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
      • Define augmented_lagrangian_prec_h
      • Typedef ImmersX::FieldCatalog
      • Typedef ImmersX::ImportedFieldView
      • Typedef ImmersX::LinearSolverParameters
      • Typedef ImmersX::SourceThicknessEvaluator
      • Typedef ObserverPointer
  • Developer documentation
    • Contributing
    • Testing
    • Documentation
    • Repository layout
    • Constraints and interactions
    • Residual execution with IDA and KINSOL
  • Changes and investigations
    • Issue 203: constrained elastodynamics investigation
    • PR 204: transient-time refactor
    • PR 202: elastodynamics MMS validation
    • PR 201: DebugRelease build variants
  • About ImmersX
    • References
    • Funding
Back to top
View this page
Edit this page

Template Function ImmersX::operator*(const double, const MaterializedOperator<VectorType, MatrixType>&)¶

  • Defined in File matrix_operator.h

Function Documentation¶

template<typename VectorType, typename MatrixType>
MaterializedOperator<VectorType, MatrixType> ImmersX::operator*(const double factor, const MaterializedOperator<VectorType, MatrixType> &source)¶

Scale a matrix-backed operator without losing its matrix provenance.

Next
Template Function ImmersX::operator*(const MaterializedOperator<VectorType, MatrixType>&, const double)
Previous
Template Function ImmersX::normal
Copyright ©
Made with Sphinx and @pradyunsg's Furo
On this page
  • Template Function ImmersX::operator*(const double, const MaterializedOperator<VectorType, MatrixType>&)
    • Function Documentation
      • operator*()