GithubHelp home page GithubHelp logo

aer-rc / lblrtm Goto Github PK

View Code? Open in Web Editor NEW
84.0 10.0 27.0 6.89 MB

Line-By-Line Radiative Transfer Model by Atmospheric and Environmental Research

License: Other

Fortran 99.91% Dockerfile 0.02% Shell 0.01% C++ 0.05% NASL 0.01%
radiative-transfer radiative-transfer-models atmospheric-modelling

lblrtm's People

Contributors

inpolonsky avatar jrmascio avatar kcadyper avatar mjiacono avatar pernak18 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

lblrtm's Issues

How to modify the spectral resolution of the output atmospheric transmittance/radiance

hello, Now that I get the spectral resolution of atmospheric radiometry very low, only 1 wavenumber (cm-1), I want to increase the spectral resolution to achieve higher precision and see the fine spectrum of atmospheric molecular radiation. But I don't know which parameters in the TAPE5 file can be modified to achieve this purpose?
I've tried modifying the DVSET and DVOUT in record 1.3, and the IMRG and IOD in record 1.2 to ensure that the program doesn't report errors, but I still can't change the spectral resolution of the output atmospheric 。
So, what parameters in TAPE5 should be changed to achieve higher resolution radiosity/transmittance results?
What is the resolution accuracy of LBLRTM?
c204bec46e10e80d981a036f918d715
855158ca564fe5ad0fe4d2e5f2b5acd
3e410a7e16798363c8cd1f8e0e9650d
TAPE5.txt
Thank you

GCC8 breaks LBLRTM/LNFL

Couldn't build on a fresh Ubuntu 20.04 install. Make errors about number of arguments not matching. Track this down to a new "feature" on GCC8 which now treats that as an error. Adding the flag -std=legacy to makefile.common on both LBLRTM and LNFL allowed them to build to completion.

Corrected sections in makefile.common should read:

##############################################################

linux using gfortran and double precision

##############################################################

linuxGNUdbl:
${MAKE} -f ${MAKEFILE} all P_TYPE=dbl FC_TYPE=gnu PLTFRM=linux
FC=gfortran
FCFLAG="-fdefault-integer-8 -fdefault-real-8 -frecord-marker=4 -std=legacy"
UTIL_FILE=util_gfortran.f90

##############################################################

linux using gfortran and single precisions

##############################################################

linuxGNUsgl:
${MAKE} -f ${MAKEFILE} all P_TYPE=sgl FC_TYPE=gnu PLTFRM=linux
FC=gfortran
FCFLAG="-frecord-marker=4 -std=legacy"
UTIL_FILE=util_gfortran.f90

about ZENITH ANGLE in RECORD3.2

Hi, we are writing TAPE5 of LBLRTM to simulate the radiance observed by satellite. But we can't understand the meaning of ZENITH ANGLE in RECORD3.2. Is it the satellite zenith angle? Why should it >90 when H1>H2? Because our satellite zenith angles are generally < 90......and what's the difference between H1 and HOBS when we do "satellite-type simulations"?

about ZENITH ANGLE in RECORD3.2

Hi, we are writing TAPE5 of LBLRTM to simulate the radiance observed by satellite. But we can't understand the meaning of ZENITH ANGLE in RECORD3.2. Is it the satellite zenith angle? Why should it >90 when H1>H2? Because our satellite zenith angles are generally < 90......and what's the difference between H1 and HOBS when we do "satellite-type simulations"?

examples

Seems like we need a document on running the examples. I can work on that

To do

  1. Test feasibility of reduced DV SHRINK: more accurate than full DV SHRINK, but faster than no SHRINK

  2. Determine source of CO2 line coupling sensitivity to choice of v1.

  3. SCNMRG issue reported by Patrick Stegmann and Ling Liu around April 6, 2019.

My name is Dr. Patrick Stegmann and I am working on the CRTM team.
I have a problem with LBLRTM and I have been referred to you by Dr. Isaac Moradi from NASA in this matter.

Currently I am trying to produce layer-to-space transmittances with LBLRTM.
To my knowledge, this is a two-step process. First, the layer-to-space optical depths are computed and saved in ODdeflt_001 to 100 files (for 100 layers). This step completes successfully.

Then, the following section needs to be added to the TAPE5 input file in order to produce a TAPE20 from the ODdeflt_ files:

$ SCNMRG of precalculated KODFILS upwelling -> TAPE20
HI=0 F4=0 CN=0 AE=0 EM=0 SC=0 FI=0 PL=0 TS=0 AT=0 M=35 LS=0 MS=0 XS=0 0 0
ODdeflt_ 100
0.0005 605.0000 1253.0000 0 0 0 -0.0010 20 5
0.00000000

However, when I run that with LBLRTM it only produces the ODdeflt_ files and then throws the following error:

 $Id: lblrun,v 1.12 1999/04/15 13:53:45 paulv Exp $


     Using TAPE3 file tape3.data
    Using LBL_HOME: AER/aer_lblrtm_v12.8_lnfl_v3.1/lblrtm
     Using TAPE5 file TAPE5_IM

 lblrtm running.
 Begin date: 20200401
 Begin time: 235129UTC

forrtl: No such file or directory
forrtl: severe (29): file not found, unit 17, file .lblrtm_pstegmann_20200401_235129UTC/fort.17
Image              PC                Routine            Line        Source
lblrtm             000000000058BCA0  Unknown               Unknown  Unknown
lblrtm             00000000005622CC  Unknown               Unknown  Unknown
lblrtm             0000000000408AB4  Unknown               Unknown  Unknown
lblrtm             0000000000406F92  Unknown               Unknown  Unknown
lblrtm             0000000000403316  Unknown               Unknown  Unknown
libc.so.6          00007F23869F8495  Unknown               Unknown  Unknown
lblrtm             0000000000403209  Unknown               Unknown  Unknown
    Using Shippert mod

 Saving LBLRTM products (160608 . kB total) in projects/LBL/lblCRTM/case_AIRS/lbl_output....
  1. call AtoB(T,Qt,Tdat,Q,NT) gfortran.9.3 compile issue (see Stegmann email April 8); also reported by Zhao on April 10)

  2. Another compile issue from Stegmann (April 20)

I had to make some some modifications to lnfl.f and the makefile.commons to get LNFL and LBLRTM to compile on a
current version of Mac OS X with the homebrew GCC v9.3.0 :

  • in all makefile.commons : Added -std=legacy to FCFLAG for the GNU options
  • in lnfl.f : Changed

327 | COMMON /CPLMOL/ MOLCPL(38),NCPL

to

327 | COMMON /CPLMOL/ MOLCPL(mol_max),NCPL

with parameter mol_max > 38.

Otherwise gfortran will throw the following error due to stricter array bounds checking in the new version:

Error: Actual argument contains too few elements for dummy argument molcpl (38/47) at (1) ../src/lnfl.f:563:29:

  563 |             CALL CPSTOR_100 (molcpl,npl)
      |                             1
Error: Actual argument contains too few elements for dummy argument 'molcpl' (38/47) at (1) ../src/lnfl.f:3776:18:

 3776 |          STR(I) = STR(I)/(VNU(I)*(1.0-EXP(-BETA0*VNU(I))))               LN15580
      |                  1

On the calculation of atmospheric radiation when observing from an orbital altitude downwards.

Hello,I would like to calculate the observation of the radiation of the various layers of the atmosphere from the high altitude of the orbit downwards。
The observer is at an altitude of 300km, and the atmospheric gas radiation is observed 160km downward. That is, it can be regarded as simulating 160km atmospheric gas upward Radiation. It stands to reason that the lower the target altitude, the higher the final observed radiation should be, but why does the LBLRTM calculate the opposite?
Like what The blue is 1 km above the target and the green one is 30 km, so why does the observer observe that the radiation at 30 km is greater than 1 km? I understand, the observer looks down
The upward radiation of 1 km of atmosphere is certainly not avoidable, and the upward radiation of 30 km of atmosphere is also observed, so when the observation target is located at 1 km, the amount of upward radiation should include 30 km
So the actual amount of radiation represented by blue should be higher than that represented by green, so why does the LBLRTM calculation result be the opposite?
image
In this paper, the atmospheric radiation observed by the SABER satellite is simulated by LBLRTM, and it is obvious that the lower the target altitude, the greater the amount of radiation that can be observed. Consistent with my understanding.
image
Attached is a TAPE file with two different target heights
1km.zip
30km.zip
Thank you

git clone LBLRTM.git - unable to checkout 'cross-sections' error

Hi,

I'm trying to clone the latest release of LBLRTM v12.11 following the instructions on the AER-RC/LBLRTM Github site, and I receive an error associated with the cross-sections. Please can you advise?

Many thanks,
Rich (output appended below - running on CentOS 7.9.2009)

-bash-4.2$ git clone --recursive [email protected]:AER-RC/LBLRTM.git
Cloning into 'LBLRTM'...
Enter passphrase for key '/home/bantges/.ssh/id_ed25519':
remote: Enumerating objects: 4337, done.
remote: Counting objects: 100% (89/89), done.
remote: Compressing objects: 100% (61/61), done.
remote: Total 4337 (delta 51), reused 54 (delta 27), pack-reused 4248
Receiving objects: 100% (4337/4337), 6.43 MiB | 3.63 MiB/s, done.
Resolving deltas: 100% (3100/3100), done.
Submodule 'aer_rt_utils' (https://github.com/AER-RC/aer_rt_utils.git) registered for path 'aer_rt_utils'
Submodule 'cross-sections' (https://github.com/AER-RC/cross-sections.git) registered for path 'cross-sections'
Cloning into 'aer_rt_utils'...
remote: Enumerating objects: 15, done.
remote: Counting objects: 100% (15/15), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 15 (delta 12), reused 15 (delta 12), pack-reused 0
Unpacking objects: 100% (15/15), done.
Submodule path 'aer_rt_utils': checked out '13f3a75ddd98fddcf0c4414031acd0d321be8569'
Cloning into 'cross-sections'...
remote: Enumerating objects: 542, done.
remote: Counting objects: 100% (542/542), done.
remote: Compressing objects: 100% (468/468), done.
remote: Total 542 (delta 77), reused 534 (delta 73), pack-reused 0
Receiving objects: 100% (542/542), 24.42 MiB | 20.00 MiB/s, done.
Resolving deltas: 100% (77/77), done.
fatal: reference is not a tree: dc9cfadfd002c594aea1764a61b38d7a7e525e1f
Unable to checkout 'dc9cfadfd002c594aea1764a61b38d7a7e525e1f' in submodule path 'cross-sections'
-bash-4.2$

Getting error fort.17 (file not found) while running lblrtm_v12.13_linux_intel_sgl

Dear All,

Myself, Hari Prasad Kottu. I am trying to compute Taucoeff files for the CRTM.

While running lblrtm_v12.13_linux_intel_sgl I got the error as shown below.

forrtl: No such file or directory
forrtl: severe (29): file not found, unit 17, file /home/hari/temp/CRTM_coef-develop/workdir/IR/TauCoeffTest/profile01/angle1/mol7/band064/fort.17
Image PC Routine Line Source
lblrtm_v12.13_lin 00000000005D059E Unknown Unknown Unknown
lblrtm_v12.13_lin 00000000006009FC Unknown Unknown Unknown
lblrtm_v12.13_lin 00000000005BA828 bufin_ 106 util_linux_intel.f90
lblrtm_v12.13_lin 000000000041B22E xlayer_ 2359 lblrtm.f90
lblrtm_v12.13_lin 0000000000412AF5 MAIN__ 1079 lblrtm.f90
lblrtm_v12.13_lin 000000000040BCDE Unknown Unknown Unknown
libc-2.22.so 00002ABBDB7896E5 __libc_start_main Unknown Unknown
lblrtm_v12.13_lin 000000000040BBE9 Unknown Unknown Unknown

The compilation options I used for compiling the LBLRTM source code are given below.

linuxINTELsgl:
${MAKE} -f ${MAKEFILE} all P_TYPE=sgl FC_TYPE=intel PLTFRM=linux
FC=ifort
FCFLAG="-w -Vaxlib -g -traceback -fp-stack-check"
UTIL_FILE=util_linux_intel.f90

While running the lblrtm, it created the ODdeflt_01 to ODdeflt_100 files but failed to create the TAPE20 file. Please help me to resolve this problem.

Thanks and Regards,
Hari Prasad Kottu

the issue of compile

When I carry out "gmake -f make_lblrtm linuxGNUsgl", I get the problem as follows: Function 'nf_get_var' at (1) has no Implicit type ../src/read_module.f90:164:39:

N2 continuum absorption independent of N2 column density?

The N2 continuum absorption appears independent of the N2 column density, to the point that putting the N2 column density to 0 still leads to N2 continuum absorption!

If my understanding of the code is correct, looking at contnm.f90 line 216, I find that, for the continuum calculation, it is related to H2O and O2.

Excuse my ignorance, but shouldn't it we have
x_vmr_n2 = wk(22)/wtot
instead of the current
x_vmr_n2 = 1. - x_vmr_h2o - x_vmr_o2 ?

I guess there is a reason this line exists. However, I use LBLRTM to interpret ground based spectra and determine molecular abundances of various molecules: hence, this feature does not suit my needs, if I understand the code correctly.

unable to compile v12.11

I'm unable to compile v12.11 the log below is for linuxINTELdbl but I've the same issue for INTELsgl

make -f make_lblrtm linuxINTELdbl


lblrtm_v12.11_linux_intel_dbl Makefile

This Makefile was designed for the linux platform.

It uses the ifort compiler, with the following options:
-r8 -i8 -w -Vaxlib

The source files used are as follows:

  lblrtm.f90 oprop.f90 contnm.f90 xmerge.f90 testmm.f90 lblatm.f90 lbllow.f90 postsub.f90 pltlbl.f90 lbldum.f90 solar.f90 nonlte.f90 fftscn_dbl.f90 util_linux_intel.f90 phys_consts.f90 planet_earth.f90 lblparams.f90 struct_types.f90 solar_cycle.f90

The object files used are as follows:

  lblrtm.o oprop.o contnm.o xmerge.o testmm.o lblatm.o lbllow.o postsub.o pltlbl.o lbldum.o solar.o nonlte.o fftscn_dbl.o util_linux_intel.o phys_consts.o planet_earth.o lblparams.o struct_types.o solar_cycle.o

The object file path is as follows:
lblrtm_v12.11_linux_intel_dbl.obj

The executable will be:
../lblrtm_v12.11_linux_intel_dbl

make in progress ...

make[1]: *** No rule to make target '../src/util_linux_intel.f90', needed by 'lblrtm_v12.11_linux_intel_dbl.obj/util_linux_intel.o'. Stop.
makefile.common:258: recipe for target 'linuxINTELdbl' failed
make: *** [linuxINTELdbl] Error 2

LBL compile issue

LBL won't compile with pgf90: PGF90-S-0168-Incompatible size of common block mlatmx (../src/lblatm.f90)
0 inform, 0 warnings, 1 severes, 0 fatal for xmlatm;

Does compile with ifort.

Maybe XS is still hardwired to 38 or 40 somewhere?

compiling LBLRTM in Ubuntu

Meg Noah provided the following instructions for compiling LBLRTM on Ubuntu

sudo apt-get update
sudo apt-get upgrade
#install fortran
sudo atp-get install gfortran
#install cmake
sudo apt install -y cmake
#install git
sudo apt install git
#install geany
sudo apt-get install geany
#get LBLRTM
git clone --recursive https://github.com/AER-RC/LBLRTM.git

#modify make_lblrtm, 
#add util_gfortran.f90 to SRCS=
#comment out netcdf references and remove mt_ckd_h2o_module 
#remove read_module
#add compile of lblparams
$(OBJPATH)/lblparams.o:       $(SRCPATH)/lblparams.f90
$(FC) -c $(FCFLAG) -I$(SRCPATH) -I$(INC_NETCDF) $< -o $@

lblparams.mod:  $(SRCPATH)/lblparams.f90
$(FC) -c $(FCFLAG) -I$(INC_NETCDF) $< -o $(OBJPATH)/lblparams.o

compile error in Windows

Hi.
I followed the tutorial step by step to compile the LNFL/LBLRTM in Windows 10 platform. But when it came to this step (Compile LNFL:>Build the Project.) the error appeared as follows.
error #5082: Syntax error, found '.' when expecting one of: ; BLOCK BLOCKDATA PROGRAM MODULE TYPE INTEGER REAL ... E:\LBLRTM\LNFL-master\src\util_dos.f90

I'm confused as to why it's going wrong and haven't found a solution. Any guidance would be appreciated.

ERROR::read_file:: file not found wv-mt-ckd.nc

This error occurs whether I use examples or my own data, where should I download the missing file wv-mt-ckd.nc?

I hope you can take time out of your busy schedule to answer my questions. Thank you very much!

possible AJ bug in MW/FIR

Comparisons of LBL and MonoRTM (in P2255) showed that LBL temperature Jacobians are incorrect at low WV (less than 2.0 cm-1).

using lblrtm to simulate the radiance of cloudy situation

I have trouble in the TAPE5 file for a cloudy situation . On the "Clouds and Aerosols" Chapter of lblrtm_instructions , it recommends that we had better input the optical depth of cloud in 'in_lblrtm_cld' file and lblrtm no longer supports the LOWTRN. But how could I get the hyperspectral optical depth of the certain hydrometeor profile? Could you please give me some advise if I want to use the GMI_GPROF date?

RECORD 3.9

ISOTPL_HCODE is set to 14,but TAPE6 isotopologue input becomes 13

How to calculate the amount of radiation that reaches the observation position after the radiation of a molecule or all molecules in the atmosphere is transmitted by atmospheric radiative transmission (linear integration) under different observation methods

hello,How to calculate the amount of radiation that reaches the observation position after the radiation of a molecule or all molecules in the atmosphere is transmitted by atmospheric radiative transmission (linear integration) under different observation methods?
The different observation methods are shown in the figure below:
limb
vertical 1
vertical 2
For example, how do I change H1, H2, and angle in a tape5 file?
image
For example, how to calculate the amount of atmospheric radiation after radiation transmission over a certain distance by only one atmospheric molecule, several atmospheric molecules, and all atmospheric molecules, and how to set it in tape5?
How to consider the effects of atmospheric radiation ?

How to get upwelling TOA radiance in visible/swir?

I would like to simulate TOA total upwelling radiances in the visible/SWIR region. Having looked at the LBLRTM instructions, and online, I think what I have to do is run two TAPE5's, and I have copied what I have below.

  • generate solar file first - I can do this ok

My first TAPE 5:

$ Run 1 TAPE5, produces DW radiance and transmittance, set angle to sza. Copy the TAPE12 to SOL.PATH.T2
HI=1 F4=1 CN=1 AE=0 EM=1 SC=0 FI=0 PL=0 TS=0 AM=1 MG=0 LA=0 OD=0 XS=0 00 00
20513.00 21622.00 1.0 0.0 0.0 0.0000 0.000 0 0.0
0.0000 s
2 2 0 0 0
0.00 100.00 0.00

-1.
%

My second TAPE5
$ Run 2 TAPE5, produces UW radiance and transmittance, set angle to vza.
HI=1 F4=1 CN=1 AE=0 EM=1 SC=0 FI=0 PL=0 TS=0 AM=1 MG=0 LA=0 OD=0 XS=0 00 00
20513.00 21622.00 1.0 0.0 0.0 0.0000 0.000 0 0.0
294.2000 -1
2 2 0 0 0
100.00 0.00 180.00

-1.
$ Convolve transmittance with solar source, needs SOL.PATH.T2 and TAPE12 as input
HI=0 F4=0 CN=0 AE=0 EM=2 SC=0 FI=0 PL=0 TS=0 AM=0 MG=0 LA=0 MS=0 XS=0 0 0
2 2 2
-1.
$ Transfer to ASCII plotting data (TAPES 27 )
HI=0 F4=0 CN=0 AE=0 EM=0 SC=0 FI=0 PL=1 TS=0 AM=0 MG=0 LA=0 MS=0 XS=0 0 0

Plot title not used

20513.00 21622.00 10.2000 100.0000 5 0 13 0 1.000 0 0 0
0.0000 1.2000 7.0200 0.2000 4 0 1 1 0 0 0 3 27
-1.
%

Is this the correct procedure? It would be really handy to have some more examples to look at for running LBLRTM in different configurations,
Many thanks
Caroline

Issue and Fix with comipiling the latest clone

Hi everyone,

I wanted to summarize my issue with cloning LBLRTM and building it from this repository. I am a little new to working with github so I ended up cloning the master branch instead of the latest release. I attempted to build it on a linux machine using gfortran to build it. At first It wouldn't build it because it couldn't find the netcdf libraries. I tried to put in the location of my netcdf library in the addlibs.inc file. However it still couldn't find -libnetcdff. The way my netcdf was built on my server was that there was a netcdf c version, and a separate netcdf fortran version. There wasn't a straight forward method to edit the addlibs.inc file I saw if the needed netcdf libraries were in different locations. So I eventually went to the netcdf bin directory, and typed the ./nc_config -libs command and got the needed library linkages to run netcdf. I edited the LD_FLAG in make_lblrtm to point to the exact locations on my machine where all the netcdf libraries were. I also had to include the hdf library. This built lblrtm. To get it to run I had to make sure the hdf library with in my library path.

How to get the solar reflection function from 'SOL.REFLECTANCE'

Hi, I want to get the upwelling infrared radiation by setting INFLAG and IOTFLG=2 in record 1.2.1 in the lblrtm manual. The instruction says the solar reflection function from 'SOL.REFLECTANCE' is needed when IOTFLG=2. So how to get the file 'SOL.REFLECTANCE'?Thank you very much.

LBLRTM v12.10 Clear Sky Radiance at extremely low VZA

Hi - I'm trying to use LBLRTM to calculate the clear sky radiance for a VZA = 84.345 degrees (hence angle is set at 95.655 in the TAPE5 below). However, I receive the following error:
"ERROR - FSCGEO"

LBLRTM v12.10 (compiled using Intel Fortran Compiler v2017 - both single and double precision versions give the same error).
AER v3.8 line file
Running on Oracle Enterprise Linux 7 (64 bit).
Please let me know if you require any additional info.

I can calculate the radiances (or layer optical depths) for VZA = 0.0, 16, 36, 55 and 72 without any issues.
I want to be able to compare the LBLRTM radiances at these angles with another RT code for a validation exercise. Please can you advise how I can calculate the radiances for such a low angle? If it's not possible, what is the limitation and how does this impact the ability to accurately calculate fluxes?

Many thanks in advance.

TAPE5 below:

$ TAPE5 generated for TRP STD Atmos., Dec 18 16:33:47 2020 UTC
HI=1 F4=1 CN=5 AE=0 EM=1 SC=0 FI=0 PL=0 TS=0 AM=1 MG=0 LA=0 OD=0 XS=0 00 00
50.0000 1650.0000 4.000E+00 0.000E+00 4.000E-02 3.600E+01 2.000E-04 1.000E-03 0
2.997E+02 1.000E+00
1 2 0 0 0 7 0 0 0 0.000 120.000
120.000 0.000 95.655
0.000 0.000 0.000 0.000 0.000
%%%%%

How to obtain band integrated values for TOA reflectance calculations?

I am trying to calculate TOA reflectance for Sentinel 2 Band 12. I tried using the merge flags while generating the TAPE5 file for LBLRTM, however I still get transmittance / radiance for individual wavelengths. Are there any other flags I need to consider? I am running them with the solar flag on, and have generated the SOLAR.RAD file from the solar-source-function repo. Are there any examples for this sort of calculation?

TAPE5 Format for LBLRRTM

I can't understand the TAPE5 for LBLRTM ,could you please give me an accurate interpretation.
for example

$ Simple TAPE5
 HI=1 F4=1 CN=1 AE=0 EM=1 SC=0 FI=0 PL=0 TS=0 AM=1 MG=0 LA=0 OD=0 XS=0   00   00
 1000.0000 1200.0000       0.0                 0.0       0.0    0.0000     0.000    0            0.0
  294.2000    1.000  
    6    2    0    0    0        
   100.000     0.000   180.000

-1.
$ Transfer to ASCII plotting data
 HI=0 F4=0 CN=0 AE=0 EM=0 SC=0 FI=0 PL=1 TS=0 AM=0 MG=0 LA=0 MS=0 XS=0    0    0
 1000.0000 1200.0000   10.2000  100.0000    5    0   12    0     1.000 0  0    0
    0.0000    1.2000    7.0200    0.2000    4    0    1    1    0    0 0    3 27
 1000.0000 1200.0000   10.2000  100.0000    5    0   12    0     1.000 0  0    0
    0.0000    1.2000    7.0200    0.2000    4    0    1    1    1    0 0    3 28
-1.
% US STD Atmosphere: Nadir viewing from 100 km down to the surface

there are too many terms that i can not understand it.

Compilation error in build folder in Ubuntu

Hi everyone, I am trying to install LBLRTM model in Ubuntu 20.04 sysem. I am getting following error during compilation:
make -f make_lblrtm linuxGNUdb
Warning: Named COMMON block ‘ifil’ at (1) shall be of the same size as elsewhere (144 vs 152 bytes) make[1]: *** No rule to make target '../src/util_gfortran.f90', needed by 'lblrtm_v12.15.1_linux_gnu_dbl.obj/util_gfortran.o'. Stop. make: *** [makefile.common:218: linuxGNUdbl] Error 2
I have followed the information given at here but could not solve it. Can you help me to solve this issue.

Thanks and regards,
Vijay Sagar

compilation_text.txt

Cannot compile LNFL (source files are not in repository)

When I try to build LNFL, I get the following error:

make[1]: *** No rule to make target `util_gfortran.f90', needed by `build'.  Stop.
make: *** [linuxGNUsgl] Error 2

I believe this occurs because the files in LNFL/src/ are symbolic links and not actual fortran files. When I copy in an old util_gfortran.f90 file, I am able to compile LNFL.

When LBLRTM calculates different observation heights, the length and resolution of the output radiometric data are inconsistent, and some of the radiometric data are 0

When I used LBLRTM to calculate the amount of atmospheric radiation at different observed altitudes, I only changed the observation altitude and found that the length of the output radiation data was different, and the radiation intensity of the last wavenumber was 0.
微信图片_20240607125104
Attached are tape files and data files for different observation heights. From the attachment, you can see that the data length is different in the two cases, what is the problem? How to unify data lengths?
40km.zip
300km.zip

Thank you

Example Codes/Tape files for LBLRTM/LNFL

Hi,
I have been looking around for example tape files for LNFL and LBLRTM and am unable to find it. Some of the old documents suggest that it used to be bundled with the .tar files before the shift to github. Is there a way to find some sample codes to understand and use LBLRTM/LNFL?

Whether or not gas density profile data needs to be entered?

If I want to calculate the variation of the radiation intensity of a gas in the atmosphere as a function of altitude and distance, should I first enter the atmospheric profile data for that gas? For example, if I want to calculate the amount of NO radiation in the critical observation mode, should I find the NO atmospheric profile data?

about ZENITH ANGLE in RECORD3.2

Hi, we are writing TAPE5 of LBLRTM to simulate the radiance observed by satellite. But we can't understand the meaning of ZENITH ANGLE in RECORD3.2. Is it the satellite zenith angle? Why should it >90 when H1>H2? Because our satellite zenith angles are generally < 90......and what's the difference between H1 and HOBS when we do "satellite-type simulations"?

Record 3.2H

i want to use horizontal path(ITYPE=1). How can add this record into tape5 file.

About optical depths

Hi, I have some problems reading the optical depth of each layer. I successfully run LBLRTM on /run_example_USER_defined_upwelling in the example. As I read in the lblrtm_instructions, I set the IMRG to 1 in Tape5 to obtain the optical depth of each layer. Many unformatted files named with "ODdeflt_" are generated in the directory. But now the question is, how should I read the data in these files? Could you please give me some help? thank you

Question about Jacobians/derivatives

in the Frequently Asked Questions mentioned "A PowerPoint document with plots showing the results from the two scripts has been included" in the last paragraph,but i didn't find it。can you tell me?

lnfl can't run

I have added the flag " -std=legacy "into the makefile.common ,however, there are still messages :

Note: The following floating-point exceptions are signalling: IEEE_UNDERFLOW_FLAG IEEE_DENORMAL
STOP LINFIL COMPLETE
49.98user 0.18system 0:50.32elapsed 99%CPU (0avgtext+0avgdata 11476maxresident)k

when I run the examples ./lbl_examples/TAPE3_files/run_lnfl.pl .
The lnfl codes are downloaded from the git clone "git clone --recursive [email protected]:AER-RC/LNFL.git".
And when I build the lnfl using make ,there are many warnings like :

Warning: Line truncated at (1) [-Wline-truncation]
COMMON /IFIL/ IRD,IPR,IPU,NWDR,LRC,ILNGTH,INLTE,IER,IPUOUT LN18920
1

Or

Warning: Possible change of value in conversion from REAL(8) to INTEGER(4) at (1) [-Wconversion]
../src/lnfl.f:2476:18:

         STR = STRSV/(VNU*(1.0-EXP(-BETA0*VNU)))                      LN12400
              1

How could I deal with it?
Thanks

Question about analytic Jacobians/derivatives

Hi, i‘ve obtained the total upwelling solar radiance successfully using the LBLRTM, now i am going to calculate the analytic Jacobians/derivatives of the solar radiance for desired parameters. So how to calculate the analytic Jacobians/derivatives for the total upwelling solar radiance? Since I've read the example code(run_example_analytic_jacobian)but i think it may be different from frequency band which i want (the example code calculate the band of 500-1174cm-1,but i use the 2900-3100cm-1 ). Thank you!

multiple profiles

Hi. Is it possible to write multiple profiles in one TAPE5? And can it output multiple results (like radiances or optical depths) in one file (like TAPE27 or ODdeflt*)? I tried to copy the content in TAPE5 twice and then run LBLRTM, but it didn't output twice.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.