(Dust) Particles in Athena++ Chao-Chin Yang Zhaohuan Zhu University - - PowerPoint PPT Presentation

dust particles in athena
SMART_READER_LITE
LIVE PREVIEW

(Dust) Particles in Athena++ Chao-Chin Yang Zhaohuan Zhu University - - PowerPoint PPT Presentation

(Dust) Particles in Athena++ Chao-Chin Yang Zhaohuan Zhu University of Nevada, Las Vegas James Stone Princeton University Dust-Gas Dynamics Lagrangian formulation d Lagrangian vs. two fluids v p u g v p


slide-1
SLIDE 1

(Dust) Particles in Athena++

Chao-Chin Yang Zhaohuan Zhu

University of Nevada, Las Vegas

James Stone

Princeton University

slide-2
SLIDE 2

Dust-Gas Dynamics

  • Lagrangian formulation
  • Lagrangian vs. two fluids
  • Particle-Mesh method
  • Gas properties on each particle
  • Averaged particle properties in each gas

cell

  • Triangle-Shaped Cloud (TSC)
  • Stopping time ts = 0: tracer particles

d ⃗ v p dt = ⃗ u g − ⃗ v p ts d ⃗ u g dt = ( ρp ρg ) ⃗ v p − ⃗ u g ts

slide-3
SLIDE 3

Nonlinear Streaming Instability

slide-4
SLIDE 4

Global Spherical-polar Disk

slide-5
SLIDE 5

Current Status

  • Van Leer integrator with any reconstruction
  • Particle-Mesh: both ways
  • Static mesh refinement
  • Message Passing Interface (MPI)
  • Coordinates: Cartesian ready; spherical-polar under testing
  • Useful: OpenMP threads block by block, and hence particles inside
slide-6
SLIDE 6

Hierarchical Design

  • Class Particles
  • Abstract base class
  • Data structure & maintenance
  • Integration with task list
  • Communication
  • Send/receive particles
  • Send/receive particle-mesh
  • I/O
  • Class DustParticles
  • Derived application class
  • New specific properties
  • Source terms
  • Class ParticleMesh
  • Utility class
  • Interpolation and assignment
  • Communication
  • Deposit onto MeshBlock
slide-7
SLIDE 7

Data Structure

  • Number of properties requested before MeshBlock construction
  • Integer properties: Particle ID, …
  • Real properties
  • Dynamical variables: Position (xp, yp, zp), Velocity (vpx, vpy, vpz), etc.
  • Auxiliary variables: always existent and follows each particle
  • Working arrays: garbage after each stage
  • Shorthands (shallow copies)
  • Number of particles in each MeshBlock dynamically maintained
  • npar: current number of particles
  • nparmax: capacity of the particle arrays

AthenaArray<> prop(nvar, nparmax); Void Particles::UpdateCapacity(int new_nparmax);

slide-8
SLIDE 8

Outputs

  • Particle properties on mesh
  • Can be output in any format

available to MeshBlock

  • Number density “np”
  • Velocity “vp” with respect to

Coordinates.

  • Mass density “rhop”
  • “prim” = (“rhop”,

“vp1”, “vp2”, “vp3”)

  • Data of individual particles
  • Only formatted table
  • Restart files
  • Not ready
  • Inhomogeneous data size

between MeshBlocks

slide-9
SLIDE 9

Uniform (Oblique) Streaming

slide-10
SLIDE 10

Linear Mode of the Streaming Instability

10−14 10−13 10−12 10−11 10−10 10−9 10−8 10−7 10−6 Error ux L∞ ≈ 1.1 × 10−6(∆/λ)1.91 L2 ≈ 6.0 × 10−7(∆/λ)1.93 uy L∞ ≈ 1.3 × 10−6(∆/λ)1.91 L2 ≈ 6.5 × 10−7(∆/λ)1.91 uz L∞ ≈ 1.2 × 10−6(∆/λ)1.92 L2 ≈ 6.0 × 10−7(∆/λ)1.93 ρg L∞ ≈ 5.9 × 10−9(∆/λ)1.82 L2 ≈ 3.4 × 10−9(∆/λ)1.86 10−3 10−2 10−1 ∆/λ 10−14 10−13 10−12 10−11 10−10 10−9 10−8 10−7 10−6 Error vp,x L∞ ≈ 1.1 × 10−6(∆/λ)1.91 L2 ≈ 5.7 × 10−7(∆/λ)1.92 10−3 10−2 10−1 ∆/λ vp,y L∞ ≈ 1.3 × 10−6(∆/λ)1.90 L2 ≈ 6.8 × 10−7(∆/λ)1.91 10−3 10−2 10−1 ∆/λ vp,z L∞ ≈ 1.2 × 10−6(∆/λ)1.92 L2 ≈ 6.4 × 10−7(∆/λ)1.92 10−3 10−2 10−1 ∆/λ ρp L∞ ≈ 7.4 × 10−5(∆/λ)1.87 L2 ≈ 4.7 × 10−5(∆/λ)1.94

Streaming instability — LinA mode — integrator = vl2 — xorder = 3 — 4 particles/cell

slide-11
SLIDE 11

TODOs

  • Spherical-polar and cylindrical coordinates
  • Particle integrator in sync with any time integrator
  • Non-uniform grid
  • Restart files
  • Boundary conditions for particles
  • Currently, only periodic or removed
  • Adaptive mesh refinement
  • More Particles outputs
  • Optimization and documentation