From af10155c71ebc32e87a515e057f6aa219dca523a Mon Sep 17 00:00:00 2001 From: mac/cli Date: Tue, 19 Mar 2024 11:22:18 -0400 Subject: [PATCH] wip --- .../2024-FDing-jupiter-rt/run_ktable_jup.py | 20 +++++++++---------- tools/rfmlib.py | 12 +++++------ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/examples/2024-FDing-jupiter-rt/run_ktable_jup.py b/examples/2024-FDing-jupiter-rt/run_ktable_jup.py index 9fffd2f7..da565765 100755 --- a/examples/2024-FDing-jupiter-rt/run_ktable_jup.py +++ b/examples/2024-FDing-jupiter-rt/run_ktable_jup.py @@ -17,23 +17,23 @@ def create_rfm_atmosphere(nlyr: int) -> dict: atm = {} data = Dataset("jupiter1d-main.nc", "r") - # km - atm["HGT"] = (data["x1f"][:-1] + data["x1f"][1:]) / (2.0 * 1.0e3) + # m + atm["HGT"] = (data["x1f"][:-1] + data["x1f"][1:]) / 2.0 - # mbar - atm["PRE"] = data["press"][0, :, 0, 0] / 100.0 + # pa + atm["PRE"] = data["press"][0, :, 0, 0] # K atm["TEM"] = data["temp"][0, :, 0, 0] - # ppmv - atm["H2O"] = data["vapor1"][0, :, 0, 0] / 18.0 * 2.2 * 1.0e6 + # mole fraction + atm["H2O"] = data["vapor1"][0, :, 0, 0] / 18.0 * 2.2 - # ppmv - atm["NH3"] = data["vapor2"][0, :, 0, 0] / 17.0 * 2.2 * 1.0e6 + # mole fraction + atm["NH3"] = data["vapor2"][0, :, 0, 0] / 17.0 * 2.2 - # ppmv - atm["H2"] = 1.0e6 - atm["H2O"] - atm["NH3"] + # mole fraction + atm["H2"] = 1.0 - atm["H2O"] - atm["NH3"] return atm diff --git a/tools/rfmlib.py b/tools/rfmlib.py index f231653f..53b0ee88 100644 --- a/tools/rfmlib.py +++ b/tools/rfmlib.py @@ -34,11 +34,11 @@ def write_rfm_atm(atm: dict) -> None: with open("rfm.atm", "w") as file: file.write("%d\n" % num_layers) file.write("*HGT [km]\n") - for i in range(num_layers): - file.write("%.8g " % atm["HGT"][i]) + for i in range(num_layers): # m -> km + file.write("%.8g " % (atm["HGT"][i] / 1.0e3,)) file.write("\n*PRE [mb]\n") - for i in range(num_layers): - file.write("%.8g " % atm["PRE"][i]) + for i in range(num_layers): # pa -> mb + file.write("%.8g " % (atm["PRE"][i] / 100.0,)) file.write("\n*TEM [K]\n") for i in range(num_layers): file.write("%.8g " % atm["TEM"][i]) @@ -46,8 +46,8 @@ def write_rfm_atm(atm: dict) -> None: if name in ["HGT", "PRE", "TEM"]: continue file.write("\n*" + name + " [ppmv]\n") - for j in range(num_layers): - file.write("%.8g " % val[j]) + for j in range(num_layers): # mol/mol -> ppmv + file.write("%.8g " % (val[j] * 1.0e6,)) file.write("\n*END") print("# rfm.atm written.")