From e0945d4e9fd8462e46ee832986ef0b5f8ec100e5 Mon Sep 17 00:00:00 2001 From: yuedong Date: Thu, 9 Jun 2022 04:32:06 +0800 Subject: [PATCH] enable output of run metadata file (run date, run time, and software version). --- config/config_NGP.yaml | 4 ++-- config/config_NGP_dev.yaml | 2 +- run_sim.py | 20 ++++++++++++++++++++ 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/config/config_NGP.yaml b/config/config_NGP.yaml index d049c54..939318b 100644 --- a/config/config_NGP.yaml +++ b/config/config_NGP.yaml @@ -12,7 +12,7 @@ # work_dir: "/public/home/fangyuedong/sim_code_release/CSST/test/" work_dir: "/public/home/fangyuedong/test/CSST/workplace/" data_dir: "/data/simudata/CSSOSDataProductsSims/data/" -run_name: "TEST_LIMITING_MAG" +run_name: "TEST_Speed" # (Optional) a file of point list # if you just want to run default pointing: @@ -79,7 +79,7 @@ obs_setting: # - give a list of indexes of chips: [ip_1, ip_2...] # - run all chips: null # Note: for all pointings - run_chips: [24, 19, 14, 9] + run_chips: [24] # Whether to enable astrometric modeling # astrometric_lib: "libshao.so" diff --git a/config/config_NGP_dev.yaml b/config/config_NGP_dev.yaml index 4bd4256..78777e8 100644 --- a/config/config_NGP_dev.yaml +++ b/config/config_NGP_dev.yaml @@ -2,7 +2,7 @@ ############################################### # # Configuration file for CSST simulation -# CSST-Sim Group, 2021/10/07, version 0.3 +# CSST-Sim Group, 2021/10/07 # ############################################### diff --git a/run_sim.py b/run_sim.py index d38182f..483db68 100755 --- a/run_sim.py +++ b/run_sim.py @@ -1,8 +1,10 @@ from ObservationSim.ObservationSim import Observation from ObservationSim._util import parse_args, make_run_dirs, generate_pointing_list +from pkg_resources import get_distribution import os import yaml import shutil +import datetime import gc gc.enable() @@ -20,6 +22,12 @@ def run_sim(Catalog): ---------- None """ + # Get version of CSSTSim Package + __version__ = get_distribution("CSSTSim").version + + # Get run datetime + now = datetime.datetime.now() + args = parse_args() if args.config_dir is None: args.config_dir = '' @@ -55,7 +63,19 @@ def run_sim(Catalog): # Make the main output directories run_dir = make_run_dirs(work_dir=config['work_dir'], run_name=config['run_name'], pointing_list=pointing_list) + + # Copy the config file to output directory & Write Run metadata shutil.copy(args.config_file, run_dir) + run_meta = os.path.join(run_dir, "run_metadata.yaml") + with open(run_meta, "w") as config_out: + config_out.write("\n") + config_out.write("###############################################\n") + config_out.write("CSSTSim_version: \"%s\"\n"%__version__) + date_str = datetime.datetime.strftime(now, '%m/%d/%Y') + time_str = datetime.datetime.strftime(now, '%H:%M:%S') + config_out.write("Run_date: \"%s\"\n"%date_str) + config_out.write("Run_time: \"%s\"\n"%time_str) + config_out.write("###############################################\n") # Initialize the simulation obs = Observation(config=config, Catalog=Catalog, work_dir=config['work_dir'], data_dir=config['data_dir']) -- GitLab