import sys from runpy import run_path from pprint import pprint import subprocess import matplotlib.pyplot as plt from util import ( has_to_be_made, has_to_save, here, paths_simuls_regimes, paths_1couple, ) def make_fig(name, source=None, letter=None): if source is None: source = f"save_{name}.py" name = f"fig_{name}" if has_to_be_made(name, source): print(f"Running {source} to produce {name}") if letter is not None: command = f"{sys.executable} {here / source} SAVE" command += f" {letter}" subprocess.run(command.split(), check=True) else: run_path(here / source) def make_table(name, source=None): if source is None: source = f"save_table_{name}.py" if has_to_be_made(f"table_{name}.tex", source): print(f"Running {source} to produce {name}") run_path(str(here / source)) make_table("methods_1couple") make_table("better_simuls") make_table("simuls_regimes") make_fig("E_vs_time_N40_Ri20") make_fig("means_vs_kmaxeta_N40_Ri20") make_fig("spectra_1couple") make_fig("kmaxeta_vs_FhR") make_fig("epsK2overepsK_vs_FhR") make_fig("isotropy_coef_vs_FhR") make_fig("isotropy_diss_vs_R") make_fig("isotropy_diss_vs_Fh") make_fig("isotropy_velo_vs_R") make_fig("isotropy_velo_vs_Fh") make_fig("epsK_vs_FhR") make_fig("mixing_coef_vs_FhR") make_fig("mixing_coef_vs_Fh") # make_fig("ratio_EA_EK_vs_FhR") # make_fig("ratio_EA_EK_vs_Fh") make_fig("ratio_velo_vs_Fh") make_fig("ratio_EA_E_vs_FhR", "save_ratio_Ekeys_E_vs_FhR.py") make_fig("ratio_EA_E_vs_Fh", "save_ratio_Ekeys_E_vs_Fh.py") make_fig("ratio_length_scales_vs_Fh") print("paths_1couple:") pprint(paths_1couple) print("paths_simuls_regimes") pprint(paths_simuls_regimes) for letter in paths_simuls_regimes.keys(): make_fig(f"spectra_regime_{letter}", "save_spectra_regimes.py", letter=letter) make_fig(f"seb_regime_{letter}", "save_seb_regimes.py", letter=letter) make_fig( f"ratio_spectra_regime_{letter}", "save_ratio_spectra_regimes.py", letter=letter, ) make_fig("spectra_1strat") make_fig("spectra_1R") make_fig("old_simuls_vs_FhR") make_fig(f"spectra_khkz_regime_L", "save_spectra_khkz_regimes.py", letter="L") if not has_to_save: plt.show()