Scrambler  1
ParticleDeclarations Module Reference

Module containing declarations needed for Particles. More...

+ Collaboration diagram for ParticleDeclarations:

List of all members.

Data Types

type  ParticleDef
 Contains data for Particles. More...
type  ParticleListDef
 List of ParticleDef's. More...

Public Member Functions

subroutine, public CreateParticle (particle)
 Creates a new particle.
subroutine AddParticleToList (particle, particlelist, lastparticle)
 Adds particle to list.
recursive subroutine ClearParticleList (particlelist)
 Clears a particle list.
subroutine DestroyParticle (particle)
 Destroys a particle.
recursive subroutine DestroyParticleList (particlelist)
 Destroys a particle list.
INTEGER function ParticleCount (particlelist)
 Counts the number of particles.
subroutine AddNewSinkParticle (Particle)
 Adds a New local sink particle.
subroutine AddSinkParticle (Particle)
 Adds a new global particle.
subroutine PrintParticleList (ParticleList)
 Outputs particle list in a pretty format.
subroutine PrintParticle (Particle)
 Outputs a single particle in a pretty format.
REAL(KIND=qPREC) function GetBindingEnergy (Particle, pos, q, r)
 Calculate Binding energy of cell to particle $E=(\mathbf{v}-\mathbf{v}_{Sink})^2+\phi_{Control Gas} + \phi_{Sink} $ where $ \phi_{Sink}= \frac{G\left(M_{Sink}+M_{Control}\right)}{gs(|\mathbf{x}-\mathbf{x}_{sink}|)} $.
INTEGER function Particle_CountSinkParticles ()
 Returns the number of sink particles attached to the SinkParticles list.
subroutine, public Particle_InitChomboDatasets (chandle)
 Initialize the particle datasets within a Chombo file.
subroutine, public Particle_WriteObjectToChomboFile (chandle, particle)
 Writes the data from a single particle to a chombo file. Also increments the chombo handle's particle offset.
subroutine Particle_ReadObjectFromChombo (chandle, particle)
 Reads the data for one particle from an open Chombo file and increments the handle offset.
REAL(KIND=qPREC) function,
dimension(3, 2) 
GetParticleBounds (Particle)
REAL(KIND=qPREC) function GetParticlePos (Particle, t)

Public Attributes

INTEGER, parameter nMoments = 1
INTEGER, parameter MaxHydroVars = 20
INTEGER, parameter NOACCRETION = 0
INTEGER, parameter FEDERRATH_ACCRETION = 1
INTEGER, parameter KRUMHOLZ_ACCRETION = 2
REAL(KIND=qPREC), parameter JEAN_CELLS = 4
INTEGER, parameter IR_ACC = 4
REAL(KIND=qpREC), parameter CFL_LEAPFROG = .1
REAL(KIND=qPREC) r_acc
REAL(KIND=qPREC) r_acc2
REAL(KIND=qPREC) r_inner_acc
REAL(KIND=qPREC) r_soft
REAL(KIND=qPREC) JeansFact
REAL(KIND=qPREC) sink_dv
REAL(KIND=qPREC) sink_dx
REAL(KIND=qPREC) ScaleGravdV
INTEGER nParticleFields
LOGICAL, dimension(:,:,:),
allocatable 
lControlVolume
TYPE(ParticleListDef), pointer SinkParticles
TYPE(ParticleListDef), pointer LastSinkParticle
TYPE(ParticleListDef), pointer NewSinkParticles
TYPE(ParticleListDef), pointer LastNewSinkParticle
TYPE(ParticleListDef), pointer BackupParticles
LOGICAL HaveSinkParticles = .false.
INTEGER NrSinkParticles
INTEGER nAngularMomentum
INTEGER nDerivatives
REAL(KIND=qPREC) ParticleMaxSpeed
REAL(KIND=qPREC) DefaultParticleRadius = IR_ACC
INTEGER, parameter, public IO_TRACKED_COMPONENTS = 11

Detailed Description

Module containing declarations needed for Particles.

Definition at line 33 of file particle_declarations.f90.


Member Function/Subroutine Documentation

subroutine, public CreateParticle ( TYPE(ParticleDef), pointer  particle)

Creates a new particle.

Parameters:
particleNewly created particle

Definition at line 100 of file particle_declarations.f90.

subroutine AddParticleToList ( TYPE(ParticleDef), pointer  particle,
TYPE(Particlelistdef), optional, pointer  particlelist,
TYPE(Particlelistdef), pointer  lastparticle 
)

Adds particle to list.

Parameters:
particleparticle object
particlelistparticle list to add to
lastparticlepointer to last particle in list

Definition at line 146 of file particle_declarations.f90.

recursive subroutine ClearParticleList ( TYPE(Particlelistdef), pointer  particlelist)

Clears a particle list.

Parameters:
particlelistParticle list object

Definition at line 191 of file particle_declarations.f90.

subroutine DestroyParticle ( TYPE(ParticleDef), pointer  particle)

Destroys a particle.

Parameters:
particleParticle object

Definition at line 202 of file particle_declarations.f90.

recursive subroutine DestroyParticleList ( TYPE(Particlelistdef), pointer  particlelist)

Destroys a particle list.

Parameters:
particlelistParticle List

Definition at line 217 of file particle_declarations.f90.

INTEGER function ParticleCount ( TYPE(ParticleListDef), pointer  particlelist)

Counts the number of particles.

Parameters:
particlelistParticle List

Definition at line 228 of file particle_declarations.f90.

subroutine AddNewSinkParticle ( TYPE(ParticleDef), pointer  Particle)

Adds a New local sink particle.

Parameters:
ParticleNew local particle

Definition at line 242 of file particle_declarations.f90.

subroutine AddSinkParticle ( TYPE(ParticleDef), pointer  Particle)

Adds a new global particle.

Parameters:
ParticleNew global particle

Definition at line 250 of file particle_declarations.f90.

subroutine PrintParticleList ( TYPE(ParticleListDef), pointer  ParticleList)

Outputs particle list in a pretty format.

Parameters:
ParticleListlist of particles to print

Definition at line 261 of file particle_declarations.f90.

subroutine PrintParticle ( TYPE(ParticleDef Particle)

Outputs a single particle in a pretty format.

Parameters:
Particleparticle to print

Definition at line 275 of file particle_declarations.f90.

REAL(KIND=qPREC) function GetBindingEnergy ( TYPE(ParticleDef Particle,
REAL(KIND=qPREC), dimension(:)  pos,
REAL(KIND=qPREC), dimension(:)  q,
REAL(KIND=qPREC)  r 
)

Calculate Binding energy of cell to particle $E=(\mathbf{v}-\mathbf{v}_{Sink})^2+\phi_{Control Gas} + \phi_{Sink} $ where $ \phi_{Sink}= \frac{G\left(M_{Sink}+M_{Control}\right)}{gs(|\mathbf{x}-\mathbf{x}_{sink}|)} $.

Parameters:
ParticleParticle object
posPosition of cell center
qcell fields
rdistance from cell to particle

Definition at line 294 of file particle_declarations.f90.

INTEGER function Particle_CountSinkParticles ( )

Returns the number of sink particles attached to the SinkParticles list.

Definition at line 310 of file particle_declarations.f90.

subroutine, public Particle_InitChomboDatasets ( TYPE(ChomboHandle), pointer  chandle)

Initialize the particle datasets within a Chombo file.

Parameters:
chandleAn active Chombo handle.

Definition at line 331 of file particle_declarations.f90.

subroutine, public Particle_WriteObjectToChomboFile ( TYPE(ChomboHandle), pointer  chandle,
TYPE(ParticleDef), pointer  particle 
)

Writes the data from a single particle to a chombo file. Also increments the chombo handle's particle offset.

Parameters:
chandleAn active Chombo handle.
particleA particle object.

Definition at line 390 of file particle_declarations.f90.

subroutine Particle_ReadObjectFromChombo ( TYPE(ChomboHandle), pointer  chandle,
TYPE(ParticleDef), pointer  particle 
)

Reads the data for one particle from an open Chombo file and increments the handle offset.

Parameters:
chandleAn open Chombo file handle.
particleA non-null pointer to a ParticleDef object. This object will be filled with data from the file.

Definition at line 473 of file particle_declarations.f90.

REAL(KIND=qPREC) function, dimension(3,2) GetParticleBounds ( TYPE(ParticleDef Particle)

Definition at line 591 of file particle_declarations.f90.

REAL(KIND=qPREC) function GetParticlePos ( TYPE(ParticleDef Particle,
REAL(KIND=qPREC)  t 
)

Definition at line 600 of file particle_declarations.f90.


Member Data Documentation

INTEGER, parameter nMoments = 1

Definition at line 41 of file particle_declarations.f90.

INTEGER, parameter MaxHydroVars = 20

Definition at line 42 of file particle_declarations.f90.

INTEGER, parameter NOACCRETION = 0

Definition at line 44 of file particle_declarations.f90.

INTEGER, parameter FEDERRATH_ACCRETION = 1

Definition at line 44 of file particle_declarations.f90.

INTEGER, parameter KRUMHOLZ_ACCRETION = 2

Definition at line 44 of file particle_declarations.f90.

REAL(KIND=qPREC), parameter JEAN_CELLS = 4

Definition at line 78 of file particle_declarations.f90.

INTEGER, parameter IR_ACC = 4

Definition at line 79 of file particle_declarations.f90.

REAL(KIND=qpREC), parameter CFL_LEAPFROG = .1

Definition at line 80 of file particle_declarations.f90.

REAL(KIND=qPREC) r_acc

Definition at line 81 of file particle_declarations.f90.

REAL(KIND=qPREC) r_acc2

Definition at line 81 of file particle_declarations.f90.

REAL(KIND=qPREC) r_inner_acc

Definition at line 81 of file particle_declarations.f90.

REAL(KIND=qPREC) r_soft

Definition at line 81 of file particle_declarations.f90.

REAL(KIND=qPREC) JeansFact

Definition at line 82 of file particle_declarations.f90.

REAL(KIND=qPREC) sink_dv

Definition at line 83 of file particle_declarations.f90.

REAL(KIND=qPREC) sink_dx

Definition at line 83 of file particle_declarations.f90.

REAL(KIND=qPREC) ScaleGravdV

Definition at line 84 of file particle_declarations.f90.

INTEGER nParticleFields

Definition at line 85 of file particle_declarations.f90.

LOGICAL, dimension(:,:,:), allocatable lControlVolume

Definition at line 86 of file particle_declarations.f90.

Definition at line 87 of file particle_declarations.f90.

Definition at line 87 of file particle_declarations.f90.

Definition at line 87 of file particle_declarations.f90.

Definition at line 87 of file particle_declarations.f90.

Definition at line 87 of file particle_declarations.f90.

LOGICAL HaveSinkParticles = .false.

Definition at line 88 of file particle_declarations.f90.

INTEGER NrSinkParticles

Definition at line 89 of file particle_declarations.f90.

Definition at line 90 of file particle_declarations.f90.

INTEGER nDerivatives

Definition at line 91 of file particle_declarations.f90.

REAL(KIND=qPREC) ParticleMaxSpeed

Definition at line 92 of file particle_declarations.f90.

REAL(KIND=qPREC) DefaultParticleRadius = IR_ACC

Definition at line 93 of file particle_declarations.f90.

INTEGER, parameter, public IO_TRACKED_COMPONENTS = 11

Definition at line 94 of file particle_declarations.f90.


The documentation for this module was generated from the following file:
 All Classes Files Functions Variables