perlin noise as a turbulence model for particle transport
play

Perlin Noise as a Turbulence Model for Particle Transport Urs Ganse - PowerPoint PPT Presentation

HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Perlin Noise as a Turbulence Model for Particle Transport Urs Ganse 1 , Rami Vainio 1 , Alex Ivascenko 2 , Felix Spanier 2 1 University of Helsinki 2 North-West University


  1. HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Perlin Noise as a Turbulence Model for Particle Transport Urs Ganse 1 , Rami Vainio 1 , Alex Ivascenko 2 , Felix Spanier 2 1 University of Helsinki 2 North-West University Potchefstroom

  2. Particle Transport and Turbulence Particle transport in heliospheric and interstellar medium Test particle simulations Turbulent fields play important role.

  3. Simulated Turbulence Getting turbulence right is difficult. Self-consistent turbulence simulations quite limited in Often, effect of turbulence approximated through diffusion. Alternatively, ad-hoc model of scattering is used. We'd rather have a way to construct quasi-turbulent fields. scales (kinetic ⇔ heliospheric)

  4. Simulated Turbulence Getting turbulence right is difficult. Self-consistent turbulence simulations quite limited in Often, effect of turbulence approximated through diffusion. Alternatively, ad-hoc model of scattering is used. We'd rather have a way to construct quasi-turbulent fields. scales (kinetic ⇔ heliospheric)

  5. Simulated Turbulence Getting turbulence right is difficult. Self-consistent turbulence simulations quite limited in Often, effect of turbulence approximated through diffusion. Alternatively, ad-hoc model of scattering is used. We'd rather have a way to construct quasi-turbulent fields. scales (kinetic ⇔ heliospheric)

  6. Quasi-Turbulent Fields Simply taking random numbers gives wrong spectrum. Creating correct spectrum in Fourier space works. Again bound to a grid. Time evolution? We would like to have deterministic randomness with the correct spectrum without having to look at all space.

  7. Quasi-Turbulent Fields Simply taking random numbers gives wrong spectrum. Creating correct spectrum in Fourier space works. Again bound to a grid. Time evolution? We would like to have deterministic randomness with the correct spectrum without having to look at all space.

  8. Quasi-Turbulent Fields Simply taking random numbers gives wrong spectrum. Creating correct spectrum in Fourier space works. Again bound to a grid. Time evolution? We would like to have deterministic randomness with the correct spectrum without having to look at all space.

  9. Perlin Noise Idea from computer graphics Developed by Ken Perlin for the movie ''Tron'' (Disney, 1982) Originally a cloud-texture generator. Structures of fixed scale.

  10. Perlin Noise Idea from computer graphics Developed by Ken Perlin for the movie ''Tron'' (Disney, 1982) Originally a cloud-texture generator. Structures of fixed scale.

  11. Perlin Noise Idea from computer graphics Developed by Ken Perlin for the movie ''Tron'' (Disney, 1982) Originally a cloud-texture generator. Structures of fixed scale.

  12. Perlin Noise Idea from computer graphics Developed by Ken Perlin for the movie ''Tron'' (Disney, 1982) Originally a cloud-texture generator. Structures of fixed scale.

  13. Perlin Noise - internals Pick deterministic gradients on grid, interpolate using Hermite polynomial. Original Perlin Noise (1982): Simplex Noise (2001):

  14. Perlin Noise - internals Pick deterministic gradients on grid, interpolate using Hermite polynomial. Original Perlin Noise (1982): Simplex Noise (2001):

  15. Perlin Noise - internals Pick deterministic gradients on grid, interpolate using Hermite polynomial. Original Perlin Noise (1982): Simplex Noise (2001):

  16. Perlin Noise - internals Pick deterministic gradients on grid, interpolate using Hermite polynomial. Original Perlin Noise (1982): Simplex Noise (2001):

  17. Perlin Noise - internals Pick deterministic gradients on grid, interpolate using Hermite polynomial. Original Perlin Noise (1982): Simplex Noise (2001):

  18. Implementation Details Advantage: Interpolation is completely local within one grid cell. Grid values are not stored, but calculated on-demand by a (cheap) hash function. Completely independent evaluation, trivially parallel. Not just suitable for GPUs - GPUs were designed for this. Spatial size is not inherently limited, except by floating point accuracy.

  19. Noise Octaves One evaluation Multiple octaves, stacked

  20. Noise Octaves One evaluation Multiple octaves, stacked

  21. Spectrum 100000 1 Octave 10000 1000 100 B (arb. units) 10 1 0.1 0.01 0.001 1 10 100 1000 Lengthscale (arb. units)

  22. Spectrum 100000 1 Octave 2 Octaves 10000 1000 100 B (arb. units) 10 1 0.1 0.01 0.001 1 10 100 1000 Lengthscale (arb. units)

  23. Spectrum 100000 1 Octave 2 Octaves 10000 3 Octaves 1000 100 B (arb. units) 10 1 0.1 0.01 0.001 1 10 100 1000 Lengthscale (arb. units)

  24. Spectrum 100000 1 Octave 2 Octaves 10000 3 Octaves 5 Octaves 1000 100 B (arb. units) 10 1 0.1 0.01 0.001 1 10 100 1000 Lengthscale (arb. units)

  25. Spectrum 100000 1 Octave 2 Octaves 10000 3 Octaves 5 Octaves 10 Octaves 1000 100 B (arb. units) 10 1 0.1 0.01 0.001 1 10 100 1000 Lengthscale (arb. units)

  26. Spectrum 100000 1 Octave 2 Octaves 10000 3 Octaves 5 Octaves 10 Octaves 1000 -5/3 -4 100 B (arb. units) 10 1 0.1 0.01 0.001 1 10 100 1000 Lengthscale (arb. units)

  27. From Noise to Turbulent Fields But these are still scalar noise functions! How do we get B-Fields from it? Dumb approach: 3 independent evaluations for 3 components Not divergence free Smarter: 3 independent evaluations for A B A · B · A

  28. From Noise to Turbulent Fields But these are still scalar noise functions! How do we get B-Fields from it? Dumb approach: 3 independent evaluations for 3 components Not divergence free Smarter: 3 independent evaluations for A B A · B · A

  29. From Noise to Turbulent Fields But these are still scalar noise functions! How do we get B-Fields from it? Dumb approach: 3 independent evaluations for 3 components Not divergence free Smarter: 3 independent evaluations for A A � B = ∇ × � ⇒ ∇ · � B = ∇ · ( ∇ × � A ) = 0

  30. Isotropic in flat coordinate space. From Noise to Turbulent Fields Anisotropy can be obtained by distorting coordinates. � x ) = ∇ × � B ( � A ( � x )

  31. Isotropic in flat coordinate space. From Noise to Turbulent Fields Anisotropy can be obtained by distorting coordinates. � x ) = ∇ × � B ( � A ( � x )

  32. From Noise to Turbulent Fields Weak Turbulence 3D noise advected along the background field. Strong Turbulence 4D noise, with 4th coordinate increasing with time. Or: One resting, one moving at + v A , one moving at − v A

  33. Field Autocorrelation 200 ⨯ 10 3 Perlin Noise 180 ⨯ 10 3 Spectral MHD 160 ⨯ 10 3 <B(t),B(t+ Δ t)> (arb. units) 140 ⨯ 10 3 120 ⨯ 10 3 100 ⨯ 10 3 80 ⨯ 10 3 60 ⨯ 10 3 40 ⨯ 10 3 20 ⨯ 10 3 0 ⨯ 10 0 0 5e-07 1e-06 1.5e-06 2e-06 2.5e-06 Δ t (s)

  34. Pitch Angle Scattering Pitch angle scattering, Perlin Noise 0.4 0.3 0.2 0.1 Δμ 0 -0.1 -0.2 -0.3 -0.4 -1 -0.5 0 0.5 1 μ

  35. Application Test particle simulations of particle accel. at shocks Kinetic scale structures Perlin Noise based turbulence - - B D B U Shock width

  36. Application Test particle simulations of particle accel. at shocks Kinetic scale structures Perlin Noise based turbulence - - B D B U Shock width 3.5 tanh tanh+noise 3 Shock Compression gibbs 2.5 2 1.5 1 0.5

  37. Preliminary results Θ Bn = 30° Θ Bn = 30° 10 7 10 6 10 5 10 4 10 3 10 2 10 1 10 0 -5.0k -5.0k -4.0k -4.0k -3.0k -3.0k -2.0k -2.0k -1.0k -1.0k 0.0 0.0 1.0k 1.0k v ∥ (km/s) v ∥ (km/s)

  38. Preliminary results Θ Bn = 30° Θ Bn = 30° 10 7 10 6 10 5 10 4 10 3 10 2 10 1 10 0 -5.0k -5.0k -4.0k -4.0k -3.0k -3.0k -2.0k -2.0k -1.0k -1.0k 0.0 0.0 1.0k 1.0k v ∥ (km/s) v ∥ (km/s)

  39. Conclusion Perlin Noise Perlin Noise is a suitable way to create something like turbulence. Versatile and computationally inexpensive. Outlook Further quantitative comparison to actual turbulence. Application to test-particle simulations of different scenarios.

Recommend


More recommend