evgenykurbatov / kp23-turb-conv-ppd

Turbulent convection in a vertical column of PPD

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Turbulent convection in a vertical column of PPD

URL: https://github.com/evgenykurbatov/kp23-turb-conv-ppd

Abstract

A model for the transport of anisotropic turbulence in an accretion disk is presented. This model is based on the mean field approximation and is designed to study turbulence of various nature and its role in the redistribution of the angular momentum of the accretion disk. The mean field approach makes it possible to take into account various types of instabilities by adding appropriate sources in the form of moments of fluctuations of hydrodynamic quantities. We used the model to study the role of convective instability in a gaseous and dusty circumstellar disk in the framework of a one-dimensional approximation. To do this, it was combined with the calculation of radiative transfer and with the calculation of the convective flow in the mixing length theory approximation. Within this framework, we confirm the conclusions of other authors that the turbulence generated by convection does not provide the observable disk accretion rates and sufficient heat source for which convection would be self-sustaining. The reasons for this are the strong anisotropy of turbulence in the disk, as well as the fact that convection turns out to be too weak source for turbulence.

This code is suitable for calculating the evolution of gas density, temperature, IR radiation field, convection and turbulence stress tensor in the vertical column of protoplanetary disk.

Features of the Cologne engine

  • Hydrostatics
    • Star gravity + self gravity
    • Turbulent pressure
  • Non-statonary radiative transfer (diffusive approximation) + thermal balance
    • Heating by external sources
    • Opacity model for a mixture of graphite and silicate dust particles
  • External heating sources: star, interstellar radiation, and accretion
  • Convection in MLT approximation
    • Canuto flux model
    • Hansen & Kawaler flux model
  • Turbulence transfer (Reynolds stress tensor approach)
    • Simplified dissipation model (eps~K/tau)
    • Full dissipation model - not yet

Requirements

  • Python3 with Numpy, Scipy, Matplotlib, Numba.
  • Cologne v1.2.0 - the engine (included in this package).

The models were ran on Python 3.7, tested on 3.9.

Code

The cologne/ directory contains the engine Cologne.

Each model is represented by a directory MODEL/ and a script MODEL.py. The model parameters are read from MODEL/params.py.

Models:

  • dry_*.py -- no convection, no turbulence
  • conv_*.py -- just convection, no turbulence
  • turb_*.py -- both convection and turbulence

In the models with the '_plus' suffix, the surface density of the column is increased by four times.

The hydrostatics and radiative transfer modules in the Cologne engine are remake of the code by Ya. N. Pavlyuchenkov (originally in Fortran).

Publications

E. P. Kurbatov, Ya. N. Pavlyuchenkov. The turbulent convection in protoplanetary disks and its role in the angular momentum transfer, arXiv

Authors

Author of the code

Evgeny P. Kurbatov Institute of Astronomy, Russian Academy of Sciences / Moscow, Russia (ORCID iD)

Co-author of the Paper

Yaroslav N. Pavlyuchenkov Institute of Astronomy, Russian Academy of Sciences / Moscow, Russia

References

Original code

  • Ya. N. Pavlyuchenkov, A. V. Tutukov, L. A. Maksimova, and E. I. Vorobyov. Evolution of a Viscous Protoplanetary Disk with Convectively Unstable Regions, 2020, Astronomy Reports, Vol. 64, No. 1, pp. 1-14 // ADS | arXiv
  • E. I. Vorobyov and Ya. N. Pavlyuchenkov. Improving the thin-disk models of circumstellar disk evolution. The 2+1-dimensional model, 2017, A&A, Vol. 606, p. A5 // ADS | arXiv

Modules and methods

  • G. Van Rossum and F. L. Drake. Python 3 Reference Manual, 2009, CreateSpace // DOI
  • Array programming with NumPy, 2020, Nature, Vol. 585, No. 7825, pp. 357-362 // DOI
  • L. Petzold. Automatic Selection of Methods for Solving Stiff and Nonstiff Systems of Ordinary Differential Equations, 1983, SIAM Journal on Scientific and Statistical Computing, Vol. 4, No. 1, pp. 136-148 // DOI
  • SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python, 2020, Nature Methods, Vol. 17, pp. 261-272 // DOI
  • S. K. Lam, A. Pitrou, and S. Seibert. Numba: A llvm-based python jit compiler. in Proceedings of the Second Workshop on the LLVM Compiler Infrastructure in HPC, 2015, pp. 1-6
  • N. Wogan and C. Rackauckas. Nicholaswogan/numbalsoda: numbalsoda v0.3.5, 2022 // DOI

About

Turbulent convection in a vertical column of PPD


Languages

Language:Python 100.0%