Celeritas 0.7.0-dev.252+develop.478e7a17
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
celeritas::optical::PhysicsTrackView Class Reference

Optical physics data for a track. More...

#include <PhysicsTrackView.hh>

Classes

struct  Initializer
 Data for initializing a physics track. More...
 

Public Types

Type aliases
using PhysicsParamsRef = NativeCRef< PhysicsParamsData >
 
using PhysicsStateRef = NativeRef< PhysicsStateData >
 
using Energy = units::MevEnergy
 

Public Member Functions

 PhysicsTrackView (PhysicsParamsRef const &, PhysicsStateRef const &, OptMatId, TrackSlotId)
 Construct from params, state, and material ID for a given track.
 
PhysicsTrackViewoperator= (Initializer const &)
 Initialize the physics for the given track.
 
void reset_interaction_mfp ()
 Reset the currently calculated interaction MFP.
 
void interaction_mfp (real_type)
 Retrieve the interaction mean free path.
 
real_type interaction_mfp () const
 Retrieve the interaction mean free path.
 
bool has_interaction_mfp () const
 Whether there's a calculated interaction MFP.
 
real_type calc_xs (ModelId, Energy) const
 Calculate the macroscopic cross section for the given model.
 
void macro_xs (real_type xs)
 Set total cross section for this step.
 
real_type macro_xs () const
 Retrieve total cross section for this step.
 
ModelId::size_type num_models () const
 Retrieve the number of optical models.
 
ActionId model_to_action (ModelId) const
 Convert a model ID to an action ID.
 
ModelId action_to_model (ActionId) const
 Convert an action ID to a model ID.
 
ActionId discrete_action () const
 Get the action ID for the discrete action.
 

Detailed Description

Optical physics data for a track.

The physics track data provides an interface for data and operations common to most optical models.

Member Function Documentation

◆ calc_xs()

real_type celeritas::optical::PhysicsTrackView::calc_xs ( ModelId  model,
Energy  energy 
) const
inline

Calculate the macroscopic cross section for the given model.

The mean free path is interpolated linearly on the model's energy grid using NonuniformGridCalculator, and the result is the macroscopic cross section.


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