This Python code simulates the rotational evolution of young stellar objects, considering the influence of accretion, magnetic braking via connection star-disk, and accretion-powered stellar winds (Matt et al., 2012, Pinzón et al., 2021). The model is based on the evolution of the inertia moment from Baraffe et al., 2015 and offers numerical solutions for the system of differential equations governing the star's rotation rate over time.
Key Features:
- Provides outputs including time evolution of rotational velocity, and period. Also, it is possible to get torque components by making a modification in the current code.
Usage:
- Specify the stellar parameters, including mass (
$M_{\ast}$ ), initial rotation period ($P^{in}_{rot}$ ), initial accretion rate ($\dot{M}^{in}_{acc}$ ), disk lifetime, magnetic field strength ($B_{\ast}$ ), and branching ratio ($\chi$ or APSW). - Run the
Rotational_models_CTTS
function to obtain time-dependent rotational evolution data. - Visualize the rotational evolutionary track using the arrays returned by the function. For enhanced analysis, consider incorporating measurements of
$v\sin(i)$ and/or$P_{rot}$ for individuals or groups of stars alongside the age.
Dependencies:
numpy
matplotlib
scipy
Example Usage:
Start by extracting the contents of this repository. Then, open an IPython console within the decompressed directory and execute the below code. Alternatively, you can create a new .py file in the repository folder, copy the code below, and run it.
import Rotational_models_CTTS
import matplotlib.pyplot as plt
# Set stellar parameters
Mass = 0.5 # Stellar mass in solar masses (Allowed values 0.3, 0.4, 0.5, and so on until, 1.2)
Prot_in = 8.0 # Initial rotation period in days
Macc_in = 1e-8 # Initial accretion rate in solar masses per year (Suggested values between 1e-10 and 1e-6)
Tdisk = 1e7 # Disk lifetime in years (Time when simulation stops)
Bfield = 500 # Magnetic field strength in Gauss (Suggested values between 100 and 3500 G)
betta = 0.01 # Magnetic field coupling parameter (Similar to Matt et al., 2012)
gamma = 1.0 # Magnetic field opening parameter (Similar to Matt et al., 2012)
APSW = 0.01 # Branching ratio parameter (Suggested values between 0.01 and 0.6)
# Run the rotational model
time, vsini, period = Rotational_models_CTTS.Run(Mass, Prot_in, Macc_in, Tdisk, Bfield, betta, gamma, APSW)
# Plot the results
plt.figure(1)
plt.plot(time/1e6, vsini)
plt.xlabel('Time (Myr)')
plt.ylabel('Rotational Velocity (km/s)')
plt.figure(2)
plt.plot(time/1e6, period)
plt.xlabel('Time (Myr)')
plt.ylabel('Rotation Period (days)')
plt.show()
The model provides an evolutive track of the stellar rotation (
We provide some outcomes from the use of these models:
In our article (Serna et al., 2023, Submitted to ApJ), we show evolutive tracks for specific cases varying one input parameter while others remain fixed.
We also build a grid of models using a parameters space of expected values in CTTS (~
The grid of models is illustrated as follows as a density plot of
The plots show a decreasing trend of the median of
Future Work:
- As new period measurements in CTTS are available, will be possible to replicate the last plots using evolutionary tracks of
$P_{rot}$ .
Measurements of periods in CTTS can be challenging to obtain because of complex brightness variations in the light curves. Despite the challenges, in some cases is possible to get a signature of the rotation in the light curve of these objects.
References:
Serna. J, Pinzón. G, Hernández. J et al., 2024 (Accepted for Publication in ApJ). Rotational Evolution of Classical T Tauri Stars: Models and Observations.