Navigation

Main Page
Download
Support
Installation
Tutorial
Examples
Reference Manual
   Version 1.0.6dev
      Class Index
      File List
   Version 1.0.6
   Version 1.0.5new_solver
   Version 1.0.5dev
   Version 1.0.5b
   Version 1.0.4dev
   Version 1.0.4
Publications


Hosted by Get Ion Beam Simulator at SourceForge.net. Fast, secure and Free Open Source software downloads

Particle base class More...

#include <particles.hpp>

Inheritance diagram for ParticleBase:
Particle< PP >

Public Member Functions

particle_status_e get_status ()
 Return particle status. More...
 
void set_status (particle_status_e status)
 Set particle status. More...
 
double IQ () const
 Return current or charge carried by trajectory or particle cloud [A/C]. More...
 
double q () const
 Return particle charge (q) [C]. More...
 
double m () const
 Return particle mass (m) [kg]. More...
 
double qm () const
 Return charge per mass ratio (q/m) [C/kg]. More...
 
void save (std::ostream &s) const
 Saves data to stream. More...
 

Protected Member Functions

 ParticleBase (double IQ, double q, double m)
 
 ParticleBase (std::istream &s)
 Constructor for loading particle from a file. More...
 

Protected Attributes

particle_status_e _status
 Status of particle. More...
 
double _IQ
 Current or charge of particle. More...
 
double _q
 Charge q [C]. More...
 
double _m
 Mass m [kg]. More...
 

Detailed Description

Particle base class

A parent class for common (non-templated) parts of Particle classes.

Constructor & Destructor Documentation

◆ ParticleBase()

ParticleBase::ParticleBase ( std::istream &  s)
inlineprotected

Constructor for loading particle from a file.

Member Function Documentation

◆ get_status()

particle_status_e ParticleBase::get_status ( )
inline

Return particle status.

◆ IQ()

double ParticleBase::IQ ( ) const
inline

Return current or charge carried by trajectory or particle cloud [A/C].

With MODE_2D, this in A/m or C/m.

◆ m()

double ParticleBase::m ( void  ) const
inline

Return particle mass (m) [kg].

◆ q()

double ParticleBase::q ( ) const
inline

Return particle charge (q) [C].

◆ qm()

double ParticleBase::qm ( ) const
inline

Return charge per mass ratio (q/m) [C/kg].

◆ save()

void ParticleBase::save ( std::ostream &  s) const
inline

Saves data to stream.

◆ set_status()

void ParticleBase::set_status ( particle_status_e  status)
inline

Set particle status.

Member Data Documentation

◆ _IQ

double ParticleBase::_IQ
protected

Current or charge of particle.

The sign is forced to be same as the sign of q/m.

In time-dependent simulations particles are localized and IQ is charge, in time-independent simulation IQ is current. In case of 2D simulations this is in units A/m or C/m. In 3D and cylindrically symmetric simulations unit is A or C.

◆ _m

double ParticleBase::_m
protected

Mass m [kg].

◆ _q

double ParticleBase::_q
protected

Charge q [C].

◆ _status

particle_status_e ParticleBase::_status
protected

Status of particle.


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


Reference manual for Ion Beam Simulator 1.0.6dev
Generated by Doxygen 1.9.1 on Thu Sep 11 2025 09:37:24.