This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Astrophysical Model Analysis Script ====== The content is a Python script designed for analyzing astrophysical models, specifically by iterating through files with a '.dsep' extension within a directory structure, extracting specific parameters such as effective temperature (Teff) and luminosity (L) from both preliminary (prems) and main sequence evolutionary point (iso) models of stars based on their mass. Additionally, the script generates a visual comparison of these parameters between the preliminary and evolutionary models in the form of a two-panel plot, saved as a PDF file. <code python> # coding: utf-8 from pysep.dsep import load_model import re from pathlib import Path import matplotlib.pyplot as plt results = dict() for path in Path(".").rglob("*.dsep"): base = path.parts[0] mass = re.findall(r"M(0\.\d+)", base)[0] model, tdir = load_model(path) prems_header = model.premsf['header'] premsRes = {"log_Teff": prems_header['log_Teff'], 'log_L': prems_header['log_L']} try: iso = model['iso'] modelRes = {"log_Teff": iso.iloc[0]['Log_T'], 'log_L': iso.iloc[0]['Log_L']} except IndexError: modelRes = {"log_Teff": None, "log_L": None} results[mass] = {"model": modelRes, "prems": premsRes} fResults = dict(filter(lambda x: bool(x[1]['model']['log_Teff']), results.items())) fig, ax = plt.subplots(2,1, figsize=(14, 7)) for mass, comp in fResults.items(): ax[0].plot([float(mass)], [comp['model']['log_Teff']], 'ko') ax[0].plot([float(mass)], [comp['prems']['log_Teff']], 'k+') ax[1].plot([float(mass)], [comp['model']['log_L']], 'ko') ax[1].plot([float(mass)], [comp['prems']['log_L']], 'k+') ax[0].set_xlabel("mass"); ax[0].set_ylabel("log Teff") ax[1].set_ylabel("Log L") plt.savefig("prems_model_first_ev_model_comp.pdf", bbox_inches="tight") </code>