centreofmass
Module
Description
- Utilities for computing the centre of mass on the particles
and correcting the bulk motion (used for turbulent driving)
- References:
None
- Owner:
Daniel Price
- Runtime parameters:
None
- Dependencies:
dim, io, mpiutils, part, vectorutils
Quick access
- Routines:
correct_bulk_motions(),get_centreofmass(),get_centreofmass_accel(),get_particle_extent(),get_total_angular_momentum(),print_particle_extent(),reset_centreofmass()
Variables
Subroutines and functions
- subroutine centreofmass/reset_centreofmass(npart, xyzh, vxyzu[, nptmass[, xyzmh_ptmass[, vxyz_ptmass]]])
- Parameters:
npart [integer,in]
xyzh (,) [real,inout]
vxyzu (,) [real,inout]
nptmass [integer,in,]
xyzmh_ptmass (,) [real,inout,]
vxyz_ptmass (,) [real,inout,]
- Use :
io(iprint())- Call to:
- subroutine centreofmass/get_centreofmass(xcom, vcom, npart, xyzh, vxyzu[, nptmass[, xyzmh_ptmass[, vxyz_ptmass[, mass]]]])
- Parameters:
xcom (3) [real,out]
vcom (3) [real,out]
npart [integer,in]
xyzh (,) [real,in]
vxyzu (,) [real,in]
nptmass [integer,in,]
xyzmh_ptmass (,) [real,in,]
vxyz_ptmass (,) [real,in,]
mass [real,out,]
- Use :
io(id(),master()),dim(maxphase(),maxp(),use_apr()),part(massoftype(),iamtype(),iphase(),igas(),isdead_or_accreted(),aprmassoftype(),apr_level()),mpiutils(reduceall_mpi())- Called from:
- subroutine centreofmass/get_centreofmass_accel(acom, npart, xyzh, fxyzu, fext[, nptmass[, xyzmh_ptmass[, fxyz_ptmass]]])
- Parameters:
acom (3) [real,out]
npart [integer,in]
xyzh (,) [real,in]
fxyzu (,) [real,in]
fext (,) [real,in]
nptmass [integer,in,]
xyzmh_ptmass (,) [real,in,]
fxyz_ptmass (,) [real,in,]
- Use :
io(id(),master()),dim(maxphase(),maxp(),use_apr()),part(massoftype(),iamtype(),iphase(),igas(),isdead_or_accreted(),apr_level(),aprmassoftype()),mpiutils(reduceall_mpi())
- subroutine centreofmass/correct_bulk_motions()
- Use :
dim(maxp(),maxphase(),use_apr()),part(npart(),xyzh(),vxyzu(),fxyzu(),iamtype(),igas(),iphase(),nptmass(),xyzmh_ptmass(),vxyz_ptmass(),isdead_or_accreted(),massoftype(),aprmassoftype(),apr_level()),mpiutils(reduceall_mpi()),io(iprint(),iverbose(),id(),master())
- subroutine centreofmass/get_total_angular_momentum(xyzh, vxyz, npart, l_tot[, xyzmh_ptmass[, vxyz_ptmass[, npart_ptmass]]])
- Parameters:
xyzh (,) [real,in]
vxyz (,) [real,in]
npart [integer,in]
l_tot (3) [real,out]
xyzmh_ptmass (,) [real,in,]
vxyz_ptmass (,) [real,in,]
npart_ptmass [integer,in,]
- Use :
vectorutils(cross_product3d()),part(iphase(),iamtype(),massoftype(),isdead_or_accreted(),aprmassoftype(),apr_level()),mpiutils(reduceall_mpi()),dim(use_apr())- Called from:
- Call to:
- subroutine centreofmass/get_particle_extent(npart, xyzh, xmin, xmax, ymin, ymax, zmin, zmax, dx, dy, dz)
- Parameters:
npart [integer,in]
xyzh (,) [real,in]
xmin [real,out]
xmax [real,out]
ymin [real,out]
ymax [real,out]
zmin [real,out]
zmax [real,out]
dx [real,out]
dy [real,out]
dz [real,out]
- Use :
part(isdead_or_accreted()),mpiutils(reduceall_mpi())- Called from:
- subroutine centreofmass/print_particle_extent()
- Use :
io(iprint(),id(),master(),iverbose()),part(npart(),xyzh())- Call to: