firemodels / radcal

Radiative properties of gaseous species and soot
Other
10 stars 22 forks source link

Request: methodology to call radcal subroutines/functions in order to determine gas emsissivity #23

Open mas-co opened 2 years ago

mas-co commented 2 years ago

Hello.

Would someone be able to spell out a methodology to call the radcal subroutines/functions in order to get the emissivity of a gas mixture. Specifically, I would like to have a fortran function in my code (e.g. e = sumefunc(temp, spc_names, spc_pressures, total_p, beam_length) or something similar).

Apologies if this is well documented somewhere as I am just now having my first peek at the radcal code.

Cheers!

Edit: my plan is to link the modules and dlls directly, and not use the main driver.

drjfloyd commented 2 years ago

The radcal repository contains three source files. rcal.f90 is the computational engine which is called by main.f90. rmod.f90 is some required variable declarations. To use radcal in other software you will need rcal.f90 and rmod.f90. If you look at main.f90, the first 80 lines do the radcal variable allocation and initialization, process the input, call the computation engine, and then does variable deallocation. You will need to do the allocation and initialization once at the start of your code. Then you can just call radcal is it is done in main for however many times you need to. Then do the decallocation when your code is done with radcal.