Skip to main content

Code to process ion spectrometer data files

Project description

NAIS processor

Use this code package to process NAIS (Neutral cluster and Air Ion Spectrometer, Airel Ltd.) data files.

The code corrects for diffusion losses in the inlet line (Gromley and Kennedy, 1948) and applies an ion mode calibration (Wagner et al. 2016). Optionally the data can be converted to standard conditions (273.15 K, 101325 Pa), which can be useful when comparing aerosol particle and ion data from various locations at different altitudes.

Optionally one can also apply a cleaning procedure to the data where the corona ion band is removed from the particle data and instances of electrometer noise are removed from ion and particle data.

Documentation

Installation

pip install nais-processor

Example usage

Use the make_config_template() method to create a configuration file template and fill it with necessary information. The configuration file is used at processing the data files.

For example:

$ python
>>> from nais_processor import *
>>> make_config_template("/home/user/viikki.yml")

This will create a configuration file template called /home/user/viikki.yml. After filling in the information for our example measurement the file may look like this:

location: Viikki, Helsinki, Finland
data_folder:
- /home/user/data/2021
- /home/user/data/2022
processed_folder: /home/user/viikki
database_file: /home/user/viikki.json 
start_date: 2022-09-28
end_date: 2022-09-30
apply_corrections: true
inlet_length: 1.0
sealevel_correction: true
apply_cleaning: true
remove_corona_ions: true
remove_noisy_electrometers: true
inverter_name: hires_25
fallback_to_constant_values: true
constant_temp: 273.15
constant_pres: 101325.0
constant_flow: 54.0

Then process the data files by running nais_processor() method with the config file as the input argument.

In our example case:

>>> nais_processor("/home/user/viikki.yml")
building database...
processing 20220928 (Viikki, Helsinki, Finland)
processing 20220929 (Viikki, Helsinki, Finland)
processing 20220930 (Viikki, Helsinki, Finland)
Done!

The code produces daily processed data files for ion and particle data. These files are saved in the destinations given in the configuration file.

The processed data files are named

NAIS[n|p][yyyymmdd][np|nds].sum

where n and p refer to negative and positive polarity respectively. yyyymmdd tells the date in the year-month-day format. np and nds refer to particle and ion data respectively.

In the processed data files the header contains the geometric mean diameters of the size bins, the first column is the time and the rest of the data is the number-size distribution matrix with normalized number concentrations (dN/dlogDp).

The locations of raw files, processed files and cleaned processed files are written in the JSON formatted database_file.

Combining sumfiles

Once you have processed your NAIS data you can extract any time range in a sum matrix format using the combine_spectra() function.

Example:

import nais_processor as nais

start_time="2022-09-29 02:00+02:00"
end_time="2022-09-30 14:00+02:00"

combined_data = nais.combine_spectra(
    config_file,start_time,end_time,spectra_type="negion")

Use the aerosol-functions package to further analyze and plot the data.

License

This project is licensed under the terms of the GNU GPLv3.

References

Gormley P. G. and Kennedy M., Diffusion from a Stream Flowing through a Cylindrical Tube, Proceedings of the Royal Irish Academy. Section A: Mathematical and Physical Sciences, 52, (1948-1950), pp. 163-169.

Wagner R., Manninen H.E., Franchin A., Lehtipalo K., Mirme S., Steiner G., Petäjä T. and Kulmala M., On the accuracy of ion measurements using a Neutral cluster and Air Ion Spectrometer, Boreal Environment Research, 21, (2016), pp. 230–241.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nais-processor-0.0.15.tar.gz (50.9 kB view details)

Uploaded Source

Built Distribution

nais_processor-0.0.15-py3-none-any.whl (30.1 kB view details)

Uploaded Python 3

File details

Details for the file nais-processor-0.0.15.tar.gz.

File metadata

  • Download URL: nais-processor-0.0.15.tar.gz
  • Upload date:
  • Size: 50.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.15

File hashes

Hashes for nais-processor-0.0.15.tar.gz
Algorithm Hash digest
SHA256 a25268b4c71f09329a1fdf1812d7c036ecbe1d1e49c25e8c05e0586a8be85492
MD5 3c12f66e22d2825fb936950f629d0084
BLAKE2b-256 e637ded4a667eabf47b35a0d2fe67287a3292093f8244a6d46d878e7821b07f1

See more details on using hashes here.

File details

Details for the file nais_processor-0.0.15-py3-none-any.whl.

File metadata

File hashes

Hashes for nais_processor-0.0.15-py3-none-any.whl
Algorithm Hash digest
SHA256 c9731561d2f540cc6a69dfefd434bad789c207d6e495b0e88fed1a599b652743
MD5 d56c1c15f6b29b0b17851a670da19aa5
BLAKE2b-256 b1eca5c2d5082fb4acf2426aad3a8fcf796fa0fe544e3916e595ad60ce76a3c0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page