# ACTRIS ACSM converter Tool to convert PTRMS level 0 data to ACTRIS NASA Ames level 1 and 2 files. Supports regular annual lev1/2 products and NRT lev1b, lev2b automatically qualified products ## Informations * Original dev repository: https://git.icare.univ-lille1.fr/dev/actris_ptrms_concentration_converter * version: 0.0.0 ## Copyright (©) 2024 * Université de Lille * Centre national de la recherche scientifique (CNRS) ## Authors * Scientific development : Valerie Gros, Lorna Foliot (LSCE/IPSL) * Convertion algorithm development : Marc-Antoine Drouin, Christophe Boitel (LMD/IPSL) * Software development : Nicolas Pascal, Aurélien Chauvigné (AERIS/ICARE) ## License This project is licensed under the GNU AFFERO General Public License v3 - see the [LICENSE](LICENSE) file for details ## Prerequisites - Python3 - numpy - pandas - scipy - pysftp-extension - click - matplotlib - pycurl - toml - tomli ## Install ### Recover the project and submodule ```bash git clone https://git.icare.univ-lille1.fr/dev/actris_ptrms_concentration_converter git submodule update ``` ### Environment Code should be working with any python >= 3.8 - pip ```bash pip install -r requirements.txt ``` - conda ```bash conda create --name ptrms -c conda-forge --file requirements.txt python ``` ### Configuration Each station/instrument setup needs to be configured in instrument_configuration/<STATION>_PTRMS.json file. ## Running ### NRT submissions #### raw -> lev0: runs at stations #### lev0 -> lev1: runs at NILU ``` * All under the hood Usage: python3 src/uploader/uploader.py [options] Options: -h, --help show this help message and exit -a, --all-days Reprocess the whole time serie -p PROD_ID, --prod-id=PROD_ID Process only this product. All by default -v, --verbose Print out processing informations -x, --overwrite Overwrite existing files * For a given hour Usage: python3 src/uploader/hourly_uploader.py [options] <prod-id> <hour-id> Args: <prod-id> : ID of the product to process, see product.cfg file for supported ones <hour-id> : hour to process, using the format YYYY-MM-DDThh Options: -h, --help show this help message and exit -o OUT_DIR, --out_dir=OUT_DIR force a specific output directory -v, --verbose Print out processing informations -x, --overwrite Overwrite existing files * For a a list of files Usage: python3 src/converter/PtrmsConverter.py [options] <infiles> Args: <infiles> : list of files to process Options: -h, --help show this help message and exit -p PROD_ID, --prod-id=PROD_ID Process only this product. All by default -o OUT_DIR, --out_dir=OUT_DIR force a specific output directory ``` ### Input/Output format * Inputs PTR-MS measurements in NASA Ames format with data and metadata as requested by EBAS (https://ebas-submit.nilu.no/templates/VOC/PTR-MS_lev0). * Outputs NASA Ames level 1 files as shown in tests/SIRTA/results.