ism3d.arts.sparse.clouds_morph¶
-
ism3d.arts.sparse.
clouds_morph
(sbProf, fmPhi=None, fmRho=None, geRho=None, bmY=None, sbQ=None, rotPhi=None, sbPA=None, vbProf=None, size=100000, seeds=[0, 1, 2], cmode=1)[source]¶ cloudlet generator for a 3D disk model
- Face-on surface brightness profile, e.g.
sbProf=(‘sersic2d’,r_e,sersic_n) sbProf=(‘expon2d’,r_s) sbProf=(‘norm2d’,r_sigma) sbProf=(‘table’,rho_quantity,sb_quantity) # A table, which will be used for liner interepretation sbProf=(‘point’) # A Point Source sbProf=(‘rho : maximum(1-rho/p1,0.0)’,5*u.kpc) # A “Lambda” function defined by three pieces of information:
variable: e.g. rho
Expression: e.g. maximum(1-rho/p1,0.0)
Parameters: e.g. P1, P2…
Face-on surface brightness model (not implemented), e.g,
xyProf=(‘x,y : np.exp(-(x^3+y^3’))) xyProf=(‘image’,’model.fits’,[[x_min,x_max],[y_min,y_max]])
Additional manupliation:
- fmPhi: Add the Fourier perturbarion along the Azimuth direction
the mean surface brightness is still preserved tuple (mode,amplitude,phi_m)
phi_m is the phase angle from (x, or semimajor axis) amplitude is normalized (0<amp<=1)
e.g. fmPhi=(2,0.5,30*u.deg)
- fmRho/gePho:
Add the Fourier peryurnation and Az-dependence stretching along the radial direction the mean surface brightness is not preserved in the traditional sense fmRho has a similar but not equiavelent affect as fmPhi gePho will control the boxyness of the isophoto contour see Peng+2010 for more details fmRho (mode,amplititde,phi_m) : fmRho=(2,0.5,30*u.deg) geRho C0 note: turn on both parameters will slightly slow down the function as
numerical intergation is involved
- bmY:
bending mode as Peng+2010 bmY Tuple (model,amplitude)
- sbQ:
the ellipse b/a ratio
- rotPhi:
see peng+2010 coordinate rotation using alpha-tanh or log-tanh this is useful for generateing spiral structures
- sbPA:
ccw Rotate the enture system by sbPA
Verticle brightness Structure, e.g.
vbProf=(‘sech’,zh) vbProf=(‘sech2’,zh) vbProf=(‘laplace’,zs) vbProf=None
seeds: 3-element vector containing the seeds of random number generators
cmode: adjust weights for each cloudlet:
https://www.astro.rug.nl/~gipsy/tsk/galmod.dc1 https://buildmedia.readthedocs.org/media/pdf/bbarolo/latest/bbarolo.pdf see cmode cmode=0, roughly even number density of cloudlets across the entire “restricted” 3D space.
so the discretzation noise will be prop to brightness in each volume
- cmode=1, the number density of cloudlets is prop to brightness density
each cloud will have the same weight. therefore discretization noise will be prop to square root of cloudnumber
return:
cloudlet positions in astropy.coordinates.representation.CylindiralRepresentation The coordinates are presented with the surface-brightness center as origin in the plane of the disc