Garfield++ v1r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
trajestep_limit Class Reference

#include <trajestep.h>

+ Inheritance diagram for trajestep_limit:

Public Member Functions

void range (int fs_cf0, vfloat rad, int &fs_cf1, vfloat &mrange)
 
 trajestep_limit (vfloat fmax_range, vfloat frad_for_straight, vfloat fmax_straight_arange, vfloat fmax_circumf_arange)
 

Public Attributes

vfloat max_range
 
vfloat rad_for_straight
 
vfloat max_straight_arange
 
vfloat max_circumf_arange
 

Detailed Description

Definition at line 32 of file trajestep.h.

Constructor & Destructor Documentation

◆ trajestep_limit()

trajestep_limit::trajestep_limit ( vfloat  fmax_range,
vfloat  frad_for_straight,
vfloat  fmax_straight_arange,
vfloat  fmax_circumf_arange 
)
inline

Definition at line 61 of file trajestep.h.

63 : max_range(fmax_range),
64 rad_for_straight(frad_for_straight),
65 max_straight_arange(fmax_straight_arange),
66 max_circumf_arange(fmax_circumf_arange) {
67 ;
68 }
vfloat max_straight_arange
Definition: trajestep.h:48
vfloat max_circumf_arange
Definition: trajestep.h:50
vfloat rad_for_straight
Definition: trajestep.h:45
vfloat max_range
Definition: trajestep.h:34

Member Function Documentation

◆ range()

void trajestep_limit::range ( int  fs_cf0,
vfloat  rad,
int &  fs_cf1,
vfloat mrange 
)

Definition at line 14 of file trajestep.cpp.

15 {
16 if (mrange < 0 || mrange > max_range) mrange = max_range;
17 fs_cf1 = fs_cf0;
18 if (fs_cf1 == 1) {
19 if (rad >= rad_for_straight) {
20 fs_cf1 = 0;
21 if (mrange / rad > max_straight_arange)
22 mrange = rad * max_straight_arange;
23 } else {
24 if (mrange / rad > max_circumf_arange) mrange = rad * max_circumf_arange;
25 }
26 }
27}

Member Data Documentation

◆ max_circumf_arange

vfloat trajestep_limit::max_circumf_arange

Definition at line 50 of file trajestep.h.

Referenced by range().

◆ max_range

vfloat trajestep_limit::max_range

Definition at line 34 of file trajestep.h.

Referenced by range().

◆ max_straight_arange

vfloat trajestep_limit::max_straight_arange

Definition at line 48 of file trajestep.h.

Referenced by gparticle::calc_step_to_bord(), and range().

◆ rad_for_straight

vfloat trajestep_limit::rad_for_straight

Definition at line 45 of file trajestep.h.

Referenced by range().


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