ImpactX
Loading...
Searching...
No Matches
impactx::Envelope Struct Reference

#include <CovarianceMatrix.H>

Public Member Functions

Envelopeset_beam_intensity (amrex::ParticleReal const intensity)
 
amrex::ParticleReal beam_intensity () const
 
Envelopeset_covariance_matrix (CovarianceMatrix const &covariance_matrix)
 
CovarianceMatrix covariance_matrix () const
 

Public Attributes

CovarianceMatrix m_env
 the 6x6 beam covariance matrix
 
amrex::ParticleReal m_beam_intensity = 0.0
 optional: charge in A (for 3D space charge) or current in A (for 2D space charge)
 

Detailed Description

This struct stores the beam envelope attributes, including the 6x6 beam covariance matrix. Used during envelope tracking mode.

Member Function Documentation

◆ beam_intensity()

amrex::ParticleReal impactx::Envelope::beam_intensity ( ) const
inline

Get envelope beam charge/current for 3D/2D space charge

Returns
3D: beam charge in C; 2D: beam current in A

◆ covariance_matrix()

CovarianceMatrix impactx::Envelope::covariance_matrix ( ) const
inline

Get the 6x6 covariance matrix for envelope tracking

◆ set_beam_intensity()

Envelope & impactx::Envelope::set_beam_intensity ( amrex::ParticleReal const intensity)
inline

Set envelope beam charge/current for 3D/2D space charge

Parameters
intensitybeam charge (C) in 3D or beam current (A) in 2D

◆ set_covariance_matrix()

Envelope & impactx::Envelope::set_covariance_matrix ( CovarianceMatrix const & covariance_matrix)
inline

Set 6x6 covariance matrix for envelope tracking

Parameters
covariance_matrixbeam 6x6 covariance matrix

Member Data Documentation

◆ m_beam_intensity

amrex::ParticleReal impactx::Envelope::m_beam_intensity = 0.0

optional: charge in A (for 3D space charge) or current in A (for 2D space charge)

◆ m_env

CovarianceMatrix impactx::Envelope::m_env

the 6x6 beam covariance matrix


The documentation for this struct was generated from the following file: