51 ERRMSG(
"Missing or invalid command-line arguments.\n\n"
52 "Usage: hydrostatic <ctl> <atm_in> <atm_hyd> [KEY VALUE ...]\n\n"
53 "Use -h for full help.");
63 read_atm(NULL, argv[2], &ctl, &atm, 0);
78 printf(
"\nJURASSIC hydrostatic tool.\n\n");
79 printf(
"Recalculate pressure from hydrostatic equilibrium for an\n");
80 printf(
"existing atmospheric profile.\n\n");
82 printf(
" hydrostatic <ctl> <atm_in> <atm_hyd> [KEY VALUE ...]\n\n");
83 printf(
"Arguments:\n");
84 printf(
" <ctl> Control file.\n");
85 printf(
" <atm_in> Input atmospheric data file.\n");
87 (
" <atm_hyd> Output atmospheric data file with hydrostatic pressure.\n");
88 printf(
" [KEY VALUE] Optional control parameters.\n\n");
90 printf(
" HYDZ must be set to a non-negative reference height.\n");
92 printf(
"Common control parameters:\n");
93 printf(
" ATMFMT Atmospheric file format.\n");
94 printf(
" NG, EMITTER[i] Active emitters.\n");
95 printf(
" NW, WINDOW[i] Extinction-window layout.\n");
96 printf(
" NCL, CLNU[i] Cloud spectral grid.\n");
97 printf(
" NSF, SFNU[i] Surface spectral grid.\n\n");
98 printf(
"Further information:\n");
99 printf(
" Manual: https://slcs-jsc.github.io/jurassic/\n");
int main(int argc, char *argv[])
void write_atm(const char *dirname, const char *filename, const ctl_t *ctl, const atm_t *atm, int profile)
Write atmospheric data to a file.
void read_ctl(int argc, char *argv[], ctl_t *ctl)
Read model control parameters from command-line and configuration input.
void read_atm(const char *dirname, const char *filename, const ctl_t *ctl, atm_t *atm, int profile)
Read atmospheric input data from a file.
void hydrostatic(const ctl_t *ctl, atm_t *atm)
Adjust pressure profile using the hydrostatic equation.
JURASSIC library declarations.
#define ERRMSG(...)
Print an error message with contextual information and terminate the program.
#define USAGE
Print usage information on -h or --help.
Atmospheric profile data.
double hydz
Reference height for hydrostatic pressure profile (-999 to skip) [km].