基础使用

在着手模拟之前,建议首先熟悉 AstroNbodySim.jl 的依赖包

整个项目有较为完善的注释,在开发和使用过程中如果不熟悉接口的参数和关键字,可以在 REPL 中使用 help?> 快速获得帮助,比如:

julia> using AstroIO

help?> read_gadget2
search: read_gadget2 read_gadget2_pos read_gadget2_jld

  read_gadget2(filename::AbstractString, units, fileunits = uGadget2; kw...)

  Return a Tuple of header and particle data in snapshot file.
  units is supported by PhysicalParticles: uSI, uCGS, uAstro,
  uGadget2, nothing. fileunits is the internal units in the file,
  and will be converted to units while reading the file.

  Keywords
  ≡≡≡≡≡≡≡≡≡≡

    •  acc::Bool = false : read acceleration data if exist

    •  pot::Bool = false : read potential data if exist

带单位的矢量和粒子类型

julia> # PhysicalParticles 定义了矢量和粒子类型
       using PhysicalParticles
julia> # 将默认(换算)单位设置为天体物理单位 astro()
julia> # using UnitfulAstro 十分必要,如果在使用天体物理单位的话 using UnitfulAstro
julia> # 定义带单位的矢量 a = PVector(3.0u"kpc", 4.0u"kpc", 12.0u"kpc")PVector(3.0 kpc, 4.0 kpc, 12.0 kpc)
julia> b = PVector(1.0, 1.0, 1.0, u"kpc")PVector(1.0 kpc, 1.0 kpc, 1.0 kpc)
julia> c = PVector2D()PVector2D{Float64}(0.0, 0.0)
julia> d = PVector2D(0.0, 1.0)PVector2D{Float64}(0.0, 1.0)
julia> # 基本矢量运算 a * b19.0 kpc^2
julia> c + dPVector2D{Float64}(0.0, 1.0)
julia> norm(a)13.0 kpc
julia> normalize(a)PVector(0.23076923076923078 kpc, 0.3076923076923077 kpc, 0.9230769230769231 kpc)
julia> # 矢量的数组 points = rand(PVector{Float64}, 5) * u"kpc"5-element Vector{PVector{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}}}: PVector(0.6434124993690461 kpc, 0.5213032975333998 kpc, 0.5896804605564794 kpc) PVector(0.10802721604271381 kpc, 0.35555268169592225 kpc, 0.8754442865676937 kpc) PVector(0.2058546008899611 kpc, 0.9627423978466237 kpc, 0.6416766943615194 kpc) PVector(0.9146936860628672 kpc, 0.027374299662445534 kpc, 0.1623498207679781 kpc) PVector(0.7824039326322124 kpc, 0.26950146007480114 kpc, 0.6102844648165117 kpc)
julia> p = randn_pvector2d(5)5-element Vector{PVector2D{Float64}}: PVector2D{Float64}(0.8916529174326752, -1.3965402075232882) PVector2D{Float64}(0.28893140278509943, -1.6643696636626002) PVector2D{Float64}(-1.4108966160742589, -0.4673243908125386) PVector2D{Float64}(0.23828894390904667, -0.5082715608491362) PVector2D{Float64}(0.03364513614113738, -0.506079956653177)
julia> mean(p)PVector2D{Float64}(0.008324356838739956, -0.9085171559001479)
julia> PhysicalParticles.center(p)PVector2D{Float64}(-0.25962184932079185, -1.0658470272375693)
julia> median(p)PVector2D{Float64}(0.23828894390904667, -0.5082715608491362)
julia> # 定义粒子 particles = [Star(uAstro, id = i) for i in 1:5]5-element Vector{Star{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Int64}}: Star 1 STAR: Pos = PVector(0.0 kpc, 0.0 kpc, 0.0 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 2 STAR: Pos = PVector(0.0 kpc, 0.0 kpc, 0.0 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 3 STAR: Pos = PVector(0.0 kpc, 0.0 kpc, 0.0 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 4 STAR: Pos = PVector(0.0 kpc, 0.0 kpc, 0.0 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 5 STAR: Pos = PVector(0.0 kpc, 0.0 kpc, 0.0 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2
julia> # 逐一修改粒子坐标 assign_particles(particles, :Pos, points)
julia> # 平均坐标 average(particles, :Pos)PVector(0.5308783869993601 kpc, 0.4272948273626385 kpc, 0.5758871454140364 kpc)
julia> # 质心坐标 assign_particles(particles, :Mass, rand(5) * u"Msun")
julia> averagebymass(particles, :Pos)PVector(0.5358926075102509 kpc, 0.4473953811465391 kpc, 0.5736317654074254 kpc)
julia> # StructArray 可以更加高效地修改粒子数据 StructArray(particles)5-element StructArray(::Vector{PVector{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}}}, ::Vector{PVector{Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}}}, ::Vector{PVector{Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}}}, ::Vector{Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}}, ::Vector{Int64}, ::Vector{Collection}, ::Vector{Int64}, ::Vector{Int64}, ::Vector{Int64}, ::Vector{Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}}, ::Vector{Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}}) with eltype Star{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Int64}: Star 1 STAR: Pos = PVector(0.6434124993690461 kpc, 0.5213032975333998 kpc, 0.5896804605564794 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.8053546229404042 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 2 STAR: Pos = PVector(0.10802721604271381 kpc, 0.35555268169592225 kpc, 0.8754442865676937 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.4401290967848297 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 3 STAR: Pos = PVector(0.2058546008899611 kpc, 0.9627423978466237 kpc, 0.6416766943615194 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.43573813891788105 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 4 STAR: Pos = PVector(0.9146936860628672 kpc, 0.027374299662445534 kpc, 0.1623498207679781 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.4532007628352598 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 5 STAR: Pos = PVector(0.7824039326322124 kpc, 0.26950146007480114 kpc, 0.6102844648165117 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.2996275132716363 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2
julia> # 可以直接创建 StructArray s = StructArray(Star(uAstro, id = i) for i in 1:5)5-element StructArray(::Vector{PVector{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}}}, ::Vector{PVector{Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}}}, ::Vector{PVector{Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}}}, ::Vector{Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}}, ::Vector{Int64}, ::Vector{Collection}, ::Vector{Int64}, ::Vector{Int64}, ::Vector{Int64}, ::Vector{Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}}, ::Vector{Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}}) with eltype Star{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Int64}: Star 1 STAR: Pos = PVector(0.0 kpc, 0.0 kpc, 0.0 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 2 STAR: Pos = PVector(0.0 kpc, 0.0 kpc, 0.0 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 3 STAR: Pos = PVector(0.0 kpc, 0.0 kpc, 0.0 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 4 STAR: Pos = PVector(0.0 kpc, 0.0 kpc, 0.0 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 5 STAR: Pos = PVector(0.0 kpc, 0.0 kpc, 0.0 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2
julia> # StructArray 同样支持其他函数,比如 assign_particles, averagebymass 等 # It is much more convenient to use dot operations s.Pos .= points5-element Vector{PVector{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}}}: PVector(0.6434124993690461 kpc, 0.5213032975333998 kpc, 0.5896804605564794 kpc) PVector(0.10802721604271381 kpc, 0.35555268169592225 kpc, 0.8754442865676937 kpc) PVector(0.2058546008899611 kpc, 0.9627423978466237 kpc, 0.6416766943615194 kpc) PVector(0.9146936860628672 kpc, 0.027374299662445534 kpc, 0.1623498207679781 kpc) PVector(0.7824039326322124 kpc, 0.26950146007480114 kpc, 0.6102844648165117 kpc)
julia> s.Mass .= rand(5) * u"Msun"5-element Vector{Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}}: 0.9378350531876319 M⊙ 0.3216530214829717 M⊙ 0.004081361694577956 M⊙ 0.9551885423945017 M⊙ 0.22448419162261624 M⊙
julia> s5-element StructArray(::Vector{PVector{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}}}, ::Vector{PVector{Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}}}, ::Vector{PVector{Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}}}, ::Vector{Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}}, ::Vector{Int64}, ::Vector{Collection}, ::Vector{Int64}, ::Vector{Int64}, ::Vector{Int64}, ::Vector{Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}}, ::Vector{Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}}) with eltype Star{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Int64}: Star 1 STAR: Pos = PVector(0.6434124993690461 kpc, 0.5213032975333998 kpc, 0.5896804605564794 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.9378350531876319 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 2 STAR: Pos = PVector(0.10802721604271381 kpc, 0.35555268169592225 kpc, 0.8754442865676937 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.3216530214829717 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 3 STAR: Pos = PVector(0.2058546008899611 kpc, 0.9627423978466237 kpc, 0.6416766943615194 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.004081361694577956 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 4 STAR: Pos = PVector(0.9146936860628672 kpc, 0.027374299662445534 kpc, 0.1623498207679781 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.9551885423945017 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 5 STAR: Pos = PVector(0.7824039326322124 kpc, 0.26950146007480114 kpc, 0.6102844648165117 kpc), Vel = PVector(0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1, 0.0 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 0.22448419162261624 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2

生成初始条件

julia> using AstroIC
julia> config = PlummerStarCluster()Config of Plummer Star Cluster Initial Conditions: Gravity Model: AstroIC.Newton Particle Collection: STAR Number of Samples: 1000 Virial Radius: 0.01 kpc Total Mass: 100000.0 M⊙
julia> particles = generate(config)1000-element StructArray(::Vector{PVector{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}}}, ::Vector{PVector{Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}}}, ::Vector{PVector{Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}}}, ::Vector{Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}}, ::Vector{Int64}, ::Vector{Collection}, ::Vector{Int64}, ::Vector{Int64}, ::Vector{Int64}, ::Vector{Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}}, ::Vector{Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}}) with eltype Star{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Int64}: Star 1 STAR: Pos = PVector(-0.005208533289868767 kpc, 0.009685140289855346 kpc, -0.007116011642574654 kpc), Vel = PVector(-1.8952624654568493 kpc Gyr^-1, 1.4033416635185678 kpc Gyr^-1, 6.488389216886727 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 2 STAR: Pos = PVector(-0.018051446283144677 kpc, -0.0038495674261549797 kpc, -0.003246693670679098 kpc), Vel = PVector(0.12889345822423282 kpc Gyr^-1, -0.8192069699103759 kpc Gyr^-1, 0.9042339016090581 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 3 STAR: Pos = PVector(0.02237630440617319 kpc, 0.014572143832442265 kpc, 0.00339875888549143 kpc), Vel = PVector(2.885382235196944 kpc Gyr^-1, -1.597577370265576 kpc Gyr^-1, 0.08123801267385045 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 4 STAR: Pos = PVector(-9.338448738695187e-6 kpc, -0.0002134280434853276 kpc, 0.007214387355161974 kpc), Vel = PVector(0.12468425960035985 kpc Gyr^-1, 2.5508092930792854 kpc Gyr^-1, 1.4614306267349202 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 5 STAR: Pos = PVector(0.005197786963926137 kpc, 0.004775706738809163 kpc, 0.006455660270171829 kpc), Vel = PVector(-1.1939779258690177 kpc Gyr^-1, -0.9401291844255382 kpc Gyr^-1, -6.121874190970835 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 6 STAR: Pos = PVector(-0.0071829008619258726 kpc, -0.031113878111260235 kpc, -0.01377711338965393 kpc), Vel = PVector(-1.5632753139771611 kpc Gyr^-1, -2.0349249895352717 kpc Gyr^-1, -1.6058881114409371 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 7 STAR: Pos = PVector(0.0014203646540301373 kpc, 0.001865157979924273 kpc, 0.01078647437885692 kpc), Vel = PVector(-3.9524066827189417 kpc Gyr^-1, 0.22011991643697448 kpc Gyr^-1, -1.7641189403600512 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 8 STAR: Pos = PVector(-0.0038471908024092665 kpc, 0.003092596635938694 kpc, -0.0024191352285668874 kpc), Vel = PVector(3.12800253098563 kpc Gyr^-1, -0.17323586760474408 kpc Gyr^-1, -4.951939566320174 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 9 STAR: Pos = PVector(0.0018937827580621644 kpc, 0.004382178150319206 kpc, -0.0016002118672101711 kpc), Vel = PVector(-1.575883468792306 kpc Gyr^-1, -1.7847813613752328 kpc Gyr^-1, 3.743455533951558 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 10 STAR: Pos = PVector(-0.005680371279215214 kpc, 0.01618068955698403 kpc, -0.02121706662159571 kpc), Vel = PVector(0.9302265554957361 kpc Gyr^-1, 3.9588368736432216 kpc Gyr^-1, -1.447918891124154 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 ⋮ Star 992 STAR: Pos = PVector(-0.004049612782253408 kpc, 0.0039028742717373633 kpc, -0.008806427938626276 kpc), Vel = PVector(-0.19045022792608257 kpc Gyr^-1, -0.34685783171612333 kpc Gyr^-1, 4.252647864858557 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 993 STAR: Pos = PVector(-0.029325952778360143 kpc, -0.01236356196247203 kpc, 0.03684301774199515 kpc), Vel = PVector(0.5728882853093292 kpc Gyr^-1, -0.47984164988720024 kpc Gyr^-1, 0.8566054857422942 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 994 STAR: Pos = PVector(0.008688744502642828 kpc, 0.010445486236147106 kpc, 0.012198311560498375 kpc), Vel = PVector(-0.38569656592171225 kpc Gyr^-1, 1.9245139634807766 kpc Gyr^-1, 2.870489945009375 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 995 STAR: Pos = PVector(0.012726473620949212 kpc, -0.005312047174952371 kpc, 0.006758378850214394 kpc), Vel = PVector(-2.18276986711203 kpc Gyr^-1, 0.2109190642091704 kpc Gyr^-1, -1.5375623165312644 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 996 STAR: Pos = PVector(-0.0009364900271034217 kpc, 0.007465421721933163 kpc, -0.011195948075616219 kpc), Vel = PVector(-2.3517802549191447 kpc Gyr^-1, 2.6738317777511074 kpc Gyr^-1, 1.3078219113525504 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 997 STAR: Pos = PVector(-0.003887988582354755 kpc, -0.002582720111244757 kpc, -0.016848367813868014 kpc), Vel = PVector(3.453795222162849 kpc Gyr^-1, -2.346792360915662 kpc Gyr^-1, -0.4594727930634489 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 998 STAR: Pos = PVector(0.005149314810476425 kpc, 0.006570253743229561 kpc, 0.013120302072453717 kpc), Vel = PVector(2.4374476927477073 kpc Gyr^-1, -1.102725454011621 kpc Gyr^-1, -1.7220454031760435 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 999 STAR: Pos = PVector(0.00825208868231837 kpc, -0.004574357073148577 kpc, -0.007366967152692575 kpc), Vel = PVector(-0.7631464622081634 kpc Gyr^-1, -3.0201778469682568 kpc Gyr^-1, -2.3531845157870865 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 1000 STAR: Pos = PVector(-0.00947691117521846 kpc, -0.0013410802990492074 kpc, 0.011074669363719262 kpc), Vel = PVector(-0.09914168072732746 kpc Gyr^-1, 0.5426970891876609 kpc Gyr^-1, 0.4072290460703626 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2

可视化

using AstroPlot
plot_makie(particles)

Snapshot 文件读写

julia> using AstroIO
julia> if !isdir("output/") mkpath("output/") end"output"
julia> write_csv("output/basic.csv", particles)true
julia> write_jld("output/basic.jld2", particles)true
julia> write_gadget2("output/basic.gadget2", particles) # This would generate a header automaticallytrue
julia> # 可以从粒子数据生成 Gadget2 header header = HeaderGadget2(particles)Gadget2 Header: Particle Info : | Type | Amount, Mass |-----------|------------------------- | Gas | 0, 0.0 M⊙ | Halo | 0, 0.0 M⊙ | Disk | 0, 0.0 M⊙ | Bulge | 0, 0.0 M⊙ | Star | 1000, 0.0 M⊙ | BlackHole | 0, 0.0 M⊙ (If zero, mass would be read from file) Start time: 0.0 Redshift: 0.0
julia> header.time = 0.1 # Gyr0.1
julia> write_gadget2("output/basicwithheader.gadget2", header, particles, uGadget2) # write in Gadget2 units (default)true
julia> # 读取刚刚写入的文件 h, d = read_gadget2("output/basic.gadget2", uAstro)(Gadget2 Header: Particle Info : | Type | Amount, Mass |-----------|------------------------- | Gas | 0, 0.0 M⊙ | Halo | 0, 0.0 M⊙ | Disk | 0, 0.0 M⊙ | Bulge | 0, 0.0 M⊙ | Star | 1000, 0.0 M⊙ | BlackHole | 0, 0.0 M⊙ (If zero, mass would be read from file) Start time: 0.0 Redshift: 0.0 , AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}[AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-0.0052085333f0 kpc, 0.00968514f0 kpc, -0.007116012f0 kpc), PVector(-1.8952625f0 kpc Gyr^-1, 1.4033417f0 kpc Gyr^-1, 6.488389f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 1, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-0.018051445f0 kpc, -0.0038495674f0 kpc, -0.0032466936f0 kpc), PVector(0.12889346f0 kpc Gyr^-1, -0.81920695f0 kpc Gyr^-1, 0.90423393f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 2, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(0.022376304f0 kpc, 0.014572144f0 kpc, 0.0033987588f0 kpc), PVector(2.8853822f0 kpc Gyr^-1, -1.5975773f0 kpc Gyr^-1, 0.08123801f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 3, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-9.338449f-6 kpc, -0.00021342804f0 kpc, 0.0072143874f0 kpc), PVector(0.12468426f0 kpc Gyr^-1, 2.5508091f0 kpc Gyr^-1, 1.4614305f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 4, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(0.005197787f0 kpc, 0.0047757067f0 kpc, 0.0064556603f0 kpc), PVector(-1.193978f0 kpc Gyr^-1, -0.9401292f0 kpc Gyr^-1, -6.1218743f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 5, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-0.007182901f0 kpc, -0.031113878f0 kpc, -0.0137771135f0 kpc), PVector(-1.5632753f0 kpc Gyr^-1, -2.034925f0 kpc Gyr^-1, -1.6058881f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 6, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(0.0014203646f0 kpc, 0.001865158f0 kpc, 0.010786475f0 kpc), PVector(-3.952407f0 kpc Gyr^-1, 0.22011991f0 kpc Gyr^-1, -1.7641189f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 7, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-0.0038471909f0 kpc, 0.0030925965f0 kpc, -0.0024191353f0 kpc), PVector(3.1280024f0 kpc Gyr^-1, -0.17323586f0 kpc Gyr^-1, -4.9519396f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 8, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(0.0018937828f0 kpc, 0.004382178f0 kpc, -0.0016002118f0 kpc), PVector(-1.5758835f0 kpc Gyr^-1, -1.7847813f0 kpc Gyr^-1, 3.7434556f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 9, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-0.005680371f0 kpc, 0.01618069f0 kpc, -0.021217067f0 kpc), PVector(0.93022656f0 kpc Gyr^-1, 3.958837f0 kpc Gyr^-1, -1.4479189f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 10, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K) … AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(0.001605388f0 kpc, 0.0010029405f0 kpc, -0.0017510834f0 kpc), PVector(2.3654172f0 kpc Gyr^-1, 0.32266864f0 kpc Gyr^-1, -1.532225f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 991, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-0.0040496127f0 kpc, 0.0039028742f0 kpc, -0.008806428f0 kpc), PVector(-0.19045022f0 kpc Gyr^-1, -0.34685785f0 kpc Gyr^-1, 4.252648f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 992, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-0.029325953f0 kpc, -0.012363562f0 kpc, 0.036843017f0 kpc), PVector(0.57288826f0 kpc Gyr^-1, -0.47984165f0 kpc Gyr^-1, 0.85660547f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 993, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(0.008688744f0 kpc, 0.010445486f0 kpc, 0.012198311f0 kpc), PVector(-0.38569656f0 kpc Gyr^-1, 1.9245139f0 kpc Gyr^-1, 2.8704898f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 994, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(0.012726474f0 kpc, -0.005312047f0 kpc, 0.006758379f0 kpc), PVector(-2.18277f0 kpc Gyr^-1, 0.21091907f0 kpc Gyr^-1, -1.5375623f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 995, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-0.00093649f0 kpc, 0.0074654217f0 kpc, -0.011195948f0 kpc), PVector(-2.3517802f0 kpc Gyr^-1, 2.6738317f0 kpc Gyr^-1, 1.3078219f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 996, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-0.0038879886f0 kpc, -0.00258272f0 kpc, -0.016848369f0 kpc), PVector(3.4537952f0 kpc Gyr^-1, -2.3467925f0 kpc Gyr^-1, -0.4594728f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 997, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(0.0051493146f0 kpc, 0.0065702535f0 kpc, 0.013120302f0 kpc), PVector(2.4374478f0 kpc Gyr^-1, -1.1027254f0 kpc Gyr^-1, -1.7220454f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 998, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(0.008252089f0 kpc, -0.004574357f0 kpc, -0.007366967f0 kpc), PVector(-0.76314646f0 kpc Gyr^-1, -3.0201778f0 kpc Gyr^-1, -2.3531845f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 999, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K), AstroIO.Gadget2Particle{Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float32, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Float32, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-2, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-2), 𝐋^2 𝐌 𝚯^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-3, Unitful.FreeUnits{(kpc^-3, M⊙), 𝐌 𝐋^-3, nothing}}, Unitful.Quantity{Float32, 𝚯, Unitful.FreeUnits{(K,), 𝚯, nothing}}, Unitful.Quantity{Float32, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float32, 𝐋^2 𝐌 𝚯^-1 𝐓^-3, Unitful.FreeUnits{(K^-1, kpc^2, M⊙, Gyr^-3), 𝐋^2 𝐌 𝚯^-1 𝐓^-3, nothing}}, Unitful.Quantity{Float32, 𝐌 𝐋^-1 𝐓^-2, Unitful.FreeUnits{(kpc^-1, M⊙, Gyr^-2), 𝐌 𝐋^-1 𝐓^-2, nothing}}, Unitful.Quantity{Float32, 𝐓^-1, Unitful.FreeUnits{(Gyr^-1,), 𝐓^-1, nothing}}, Int32}(PVector(-0.009476911f0 kpc, -0.0013410803f0 kpc, 0.01107467f0 kpc), PVector(-0.09914168f0 kpc Gyr^-1, 0.54269713f0 kpc Gyr^-1, 0.40722907f0 kpc Gyr^-1), PVector(0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc Gyr^-2), 100.0f0 M⊙, 1000, STAR, 0, 0, 0, 0.0f0 kpc^2 Gyr^-2, 0.0f0 kpc Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-2, 0.0f0 M⊙ kpc^-3, 0.0f0 kpc, 0.0f0, 0.0f0, 0, PVector(0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1, 0.0f0 kpc Gyr^-1), 0.0f0 Gyr^-1, 0.0f0 Gyr^-1, 0.0f0 kpc, 0.0f0 M⊙ kpc^-1 Gyr^-2, 0.0f0 kpc^2 M⊙ K^-1 Gyr^-3, 0.0f0 kpc Gyr^-1, 0.0f0 kpc^2 Gyr^-2, 0.0f0 K)])
julia> d = read_jld("output/basic.jld2")1000-element StructArray(::Vector{PVector{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}}}, ::Vector{PVector{Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}}}, ::Vector{PVector{Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}}}, ::Vector{Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}}, ::Vector{Int64}, ::Vector{Collection}, ::Vector{Int64}, ::Vector{Int64}, ::Vector{Int64}, ::Vector{Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}}, ::Vector{Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}}) with eltype Star{Unitful.Quantity{Float64, 𝐋, Unitful.FreeUnits{(kpc,), 𝐋, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-1, Unitful.FreeUnits{(kpc, Gyr^-1), 𝐋 𝐓^-1, nothing}}, Unitful.Quantity{Float64, 𝐋 𝐓^-2, Unitful.FreeUnits{(kpc, Gyr^-2), 𝐋 𝐓^-2, nothing}}, Unitful.Quantity{Float64, 𝐌, Unitful.FreeUnits{(M⊙,), 𝐌, nothing}}, Unitful.Quantity{Float64, 𝐋^2 𝐓^-2, Unitful.FreeUnits{(kpc^2, Gyr^-2), 𝐋^2 𝐓^-2, nothing}}, Int64}: Star 1 STAR: Pos = PVector(-0.005208533289868767 kpc, 0.009685140289855346 kpc, -0.007116011642574654 kpc), Vel = PVector(-1.8952624654568493 kpc Gyr^-1, 1.4033416635185678 kpc Gyr^-1, 6.488389216886727 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 2 STAR: Pos = PVector(-0.018051446283144677 kpc, -0.0038495674261549797 kpc, -0.003246693670679098 kpc), Vel = PVector(0.12889345822423282 kpc Gyr^-1, -0.8192069699103759 kpc Gyr^-1, 0.9042339016090581 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 3 STAR: Pos = PVector(0.02237630440617319 kpc, 0.014572143832442265 kpc, 0.00339875888549143 kpc), Vel = PVector(2.885382235196944 kpc Gyr^-1, -1.597577370265576 kpc Gyr^-1, 0.08123801267385045 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 4 STAR: Pos = PVector(-9.338448738695187e-6 kpc, -0.0002134280434853276 kpc, 0.007214387355161974 kpc), Vel = PVector(0.12468425960035985 kpc Gyr^-1, 2.5508092930792854 kpc Gyr^-1, 1.4614306267349202 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 5 STAR: Pos = PVector(0.005197786963926137 kpc, 0.004775706738809163 kpc, 0.006455660270171829 kpc), Vel = PVector(-1.1939779258690177 kpc Gyr^-1, -0.9401291844255382 kpc Gyr^-1, -6.121874190970835 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 6 STAR: Pos = PVector(-0.0071829008619258726 kpc, -0.031113878111260235 kpc, -0.01377711338965393 kpc), Vel = PVector(-1.5632753139771611 kpc Gyr^-1, -2.0349249895352717 kpc Gyr^-1, -1.6058881114409371 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 7 STAR: Pos = PVector(0.0014203646540301373 kpc, 0.001865157979924273 kpc, 0.01078647437885692 kpc), Vel = PVector(-3.9524066827189417 kpc Gyr^-1, 0.22011991643697448 kpc Gyr^-1, -1.7641189403600512 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 8 STAR: Pos = PVector(-0.0038471908024092665 kpc, 0.003092596635938694 kpc, -0.0024191352285668874 kpc), Vel = PVector(3.12800253098563 kpc Gyr^-1, -0.17323586760474408 kpc Gyr^-1, -4.951939566320174 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 9 STAR: Pos = PVector(0.0018937827580621644 kpc, 0.004382178150319206 kpc, -0.0016002118672101711 kpc), Vel = PVector(-1.575883468792306 kpc Gyr^-1, -1.7847813613752328 kpc Gyr^-1, 3.743455533951558 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 10 STAR: Pos = PVector(-0.005680371279215214 kpc, 0.01618068955698403 kpc, -0.02121706662159571 kpc), Vel = PVector(0.9302265554957361 kpc Gyr^-1, 3.9588368736432216 kpc Gyr^-1, -1.447918891124154 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 ⋮ Star 992 STAR: Pos = PVector(-0.004049612782253408 kpc, 0.0039028742717373633 kpc, -0.008806427938626276 kpc), Vel = PVector(-0.19045022792608257 kpc Gyr^-1, -0.34685783171612333 kpc Gyr^-1, 4.252647864858557 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 993 STAR: Pos = PVector(-0.029325952778360143 kpc, -0.01236356196247203 kpc, 0.03684301774199515 kpc), Vel = PVector(0.5728882853093292 kpc Gyr^-1, -0.47984164988720024 kpc Gyr^-1, 0.8566054857422942 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 994 STAR: Pos = PVector(0.008688744502642828 kpc, 0.010445486236147106 kpc, 0.012198311560498375 kpc), Vel = PVector(-0.38569656592171225 kpc Gyr^-1, 1.9245139634807766 kpc Gyr^-1, 2.870489945009375 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 995 STAR: Pos = PVector(0.012726473620949212 kpc, -0.005312047174952371 kpc, 0.006758378850214394 kpc), Vel = PVector(-2.18276986711203 kpc Gyr^-1, 0.2109190642091704 kpc Gyr^-1, -1.5375623165312644 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 996 STAR: Pos = PVector(-0.0009364900271034217 kpc, 0.007465421721933163 kpc, -0.011195948075616219 kpc), Vel = PVector(-2.3517802549191447 kpc Gyr^-1, 2.6738317777511074 kpc Gyr^-1, 1.3078219113525504 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 997 STAR: Pos = PVector(-0.003887988582354755 kpc, -0.002582720111244757 kpc, -0.016848367813868014 kpc), Vel = PVector(3.453795222162849 kpc Gyr^-1, -2.346792360915662 kpc Gyr^-1, -0.4594727930634489 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 998 STAR: Pos = PVector(0.005149314810476425 kpc, 0.006570253743229561 kpc, 0.013120302072453717 kpc), Vel = PVector(2.4374476927477073 kpc Gyr^-1, -1.102725454011621 kpc Gyr^-1, -1.7220454031760435 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 999 STAR: Pos = PVector(0.00825208868231837 kpc, -0.004574357073148577 kpc, -0.007366967152692575 kpc), Vel = PVector(-0.7631464622081634 kpc Gyr^-1, -3.0201778469682568 kpc Gyr^-1, -2.3531845157870865 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2 Star 1000 STAR: Pos = PVector(-0.00947691117521846 kpc, -0.0013410802990492074 kpc, 0.011074669363719262 kpc), Vel = PVector(-0.09914168072732746 kpc Gyr^-1, 0.5426970891876609 kpc Gyr^-1, 0.4072290460703626 kpc Gyr^-1), Acc = PVector(0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2, 0.0 kpc Gyr^-2), Mass = 100.0 M⊙, Ti_endstep = 0, Ti_begstep = 0, Potential = 0.0 kpc^2 Gyr^-2, OldAcc = 0.0 kpc Gyr^-2