All Projects → space-physics → Lowtran

space-physics / Lowtran

Licence: mit
LOWTRAN atmospheric absorption extinction, scatter and irradiance model--in Python and Matlab

Programming Languages

python
139335 projects - #7 most used programming language
matlab
3953 projects
fortran
972 projects

Projects that are alternatives of or similar to Lowtran

Estimate-Core-Permeability-from-NMR-data-using-either-Map-Inversion-or-kNN
Estimate Core-based Permeability from NMR well log data
Stars: ✭ 14 (-75.86%)
Mutual labels:  geoscience
netcdf-java
The Unidata netcdf-java library
Stars: ✭ 84 (+44.83%)
Mutual labels:  geoscience
Pygmt
A Python interface for the Generic Mapping Tools.
Stars: ✭ 331 (+470.69%)
Mutual labels:  geoscience
open-geoscience-repository
Open geoscience datasets available in open databases from Google Drive, SEG Wiki, and US DoE Geothermal Data Repository OpenEi
Stars: ✭ 83 (+43.1%)
Mutual labels:  geoscience
jigsaw-geo-matlab
MATLAB bindings for JIGSAW(GEO): an unstructured mesh generator for geoscientific modelling.
Stars: ✭ 26 (-55.17%)
Mutual labels:  geoscience
gnuradio ham
Basic example of using GNU Radio Companion for amateur (ham) radio communications
Stars: ✭ 19 (-67.24%)
Mutual labels:  geoscience
rockhound
NOTICE: This library is no longer being developed. Use Ensaio instead (https://www.fatiando.org/ensaio). -- Download geophysical models/datasets and load them in Python
Stars: ✭ 33 (-43.1%)
Mutual labels:  geoscience
Python Aos Lesson
Python for Atmosphere and Ocean Scientists
Stars: ✭ 49 (-15.52%)
Mutual labels:  geoscience
DA Tutorial
This is a 'hands-on' tutorial for the RIKEN International School on Data Assimilation (RISDA2018).
Stars: ✭ 23 (-60.34%)
Mutual labels:  geoscience
Geospatial Machine Learning
A curated list of resources focused on Machine Learning in Geospatial Data Science.
Stars: ✭ 289 (+398.28%)
Mutual labels:  geoscience
grwave
Python for ITU P.368 : Ground-wave propagation curves for frequencies between 10 kHz and 30 MHz
Stars: ✭ 19 (-67.24%)
Mutual labels:  geoscience
paper-moho-inversion-tesseroids
Source code, data, and model results for "Fast non-linear gravity inversion in spherical coordinates with application to the South American Moho". Published in the Geophysical Journal International.
Stars: ✭ 27 (-53.45%)
Mutual labels:  geoscience
Verde
Processing and interpolating spatial data with a twist of machine learning
Stars: ✭ 260 (+348.28%)
Mutual labels:  geoscience
hwm93
NASA Horizontal Wind Model HWM93 in Python and Matlab
Stars: ✭ 14 (-75.86%)
Mutual labels:  geoscience
Gempy
GemPy is an open-source, Python-based 3-D structural geological modeling software, which allows the implicit (i.e. automatic) creation of complex geological models from interface and orientation data. It also offers support for stochastic modeling to adress parameter and model uncertainties.
Stars: ✭ 396 (+582.76%)
Mutual labels:  geoscience
piradar
Radar using Red Pitaya for RF: using Raspberry Pi 3 for quad-core radar signal processing
Stars: ✭ 59 (+1.72%)
Mutual labels:  geoscience
data vis statistics geosciences
This repository contains the laboratory portion of an upper level undergraduate class in Python on data visualization and statistics for geo & space scientists. Labs are updated when the course is in session through the most recent branch. See master version for current class.
Stars: ✭ 32 (-44.83%)
Mutual labels:  geoscience
Pyoptflow
Optical Flow estimation in pure Python
Stars: ✭ 49 (-15.52%)
Mutual labels:  geoscience
Awesome Open Geoscience
Curated from repositories that make our lives as geoscientists, hackers and data wranglers easier or just more awesome
Stars: ✭ 668 (+1051.72%)
Mutual labels:  geoscience
Simpeg
Simulation and Parameter Estimation in Geophysics - A python package for simulation and gradient based parameter estimation in the context of geophysical applications.
Stars: ✭ 283 (+387.93%)
Mutual labels:  geoscience

Lowtran in Python

Zenodo DOI CDash Language grade: Python Actions Status Actions Status PyPi version PyPi Download stats

LOWTRAN7 atmospheric absorption extinction model. Updated by Michael Hirsch to be platform independent and easily accessible from Python ≥ 3.6 and Matlab.

The main LOWTRAN program has been made accessible from Python by using direct memory transfers instead of the cumbersome and error-prone process of writing/reading text files. xarray.Dataset high-performance, simple N-D array data is passed out, with appropriate metadata.

Gallery

See below for how to make these examples.

Lowtran7 absorption

Install

You will need a Fortran compiler. gfortran is one suitable compiler. We use f2py (part of numpy) to seamlessly use Fortran libraries from Python by special compilation of the Fortran library with auto-generated shim code.

  1. If a Fortran compiler is not already installed, install Gfortran:

    • Linux: apt install gfortran
    • Mac: brew install gcc
    • Windows use MSYS2 or MinGW to get Gfortran. Windows only: from Powershell:
    echo "[build]`ncompiler=mingw32" | Out-File -Encoding ASCII ~/pydistutils.cfg
    

    Note: Cygwin is essentially obsolete due to Windows Subsystem for Linux. Cygwin is broken for Numpy and Gfortran and general.

  2. Install Python Lowtran code

    pip install -e .
    

Examples

In these examples, you can write to HDF5 with the -o option.

We present examples of:

Matlab

Matlab users can seamlessly access Python modules, as demonstrated in RunLowtran.m and lowtran_transmission.m.

Here's what's you'll need:

  1. Setup Python ↔ Matlab interface.

  2. Install Lowtran in Python as at the top of this Readme.

  3. From Matlab, verify everything is working by from the lowtran/ directory:

    runtests('tests')
    

Notes

LOWTRAN7 User manual Refer to this to understand what parameters are set to default. Currently I don't have any aerosols enabled for example, though it's possible to add them into the code.

Right now a lot of configuration features aren't implemented, please request those you want.

Reference

  • Original 1994 Lowtran7 Code
  • LOWFIL program in reference/lowtran7.10.f was not connected as we had previously implemented a filter function directly in Python.
  • LOWSCAN spectral sampling (scanning) program in reference/lowtran7.13.f was not connected as we had no need for coarser spectral resolution.

Fortran (optional)

To compile Fortran code standalone (without Python):

ctest -S setup.cmake -V
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].