commit ce9fe24190a7cef463524ee38d02f2a657518e96
parent c9c08433f0f00a7c117937fd0147b61a3b26ed4f
Author: Vincent Forest <vincent.forest@meso-star.com>
Date: Thu, 7 Jul 2022 16:43:46 +0200
Improve some error messages
Diffstat:
1 file changed, 15 insertions(+), 8 deletions(-)
diff --git a/src/rnsf.c b/src/rnsf.c
@@ -268,8 +268,10 @@ parse_phase_fn_discrete
if(i > 0 && item[0].theta <= item[-1].theta) {
log_err(rnsf,
"%s:%lu: the discretized phase function must be sorted in ascending "
- "order of angle.\n",
- txtrdr_get_name(txtrdr), (unsigned long)txtrdr_get_line_num(txtrdr));
+ "order of angles (item %lu at %g rad; item %lu at %g rad).\n",
+ txtrdr_get_name(txtrdr), (unsigned long)txtrdr_get_line_num(txtrdr),
+ (unsigned long)(i-1), item[-1].theta,
+ (unsigned long)(i), item[ 0].theta);
res = RES_BAD_ARG;
goto error;
}
@@ -437,9 +439,11 @@ parse_per_wlen_phase_fn
if(i > 0 && phase[0].wlen[0] <= phase[-1].wlen[0]) {
log_err(rnsf,
- "%s:%lu: the phase function must be sorted in ascending order of "
- "wavelength.\n",
- txtrdr_get_name(txtrdr), (unsigned long)txtrdr_get_line_num(txtrdr));
+ "%s:%lu: the phase functions must be sorted in ascending order of "
+ "wavelengths (phase function %lu at %g nm; phase function %lu at %g nm).\n",
+ txtrdr_get_name(txtrdr), (unsigned long)txtrdr_get_line_num(txtrdr),
+ (unsigned long)(i-1), phase[-1].wlen[0],
+ (unsigned long)(i), phase[ 0].wlen[0]);
res = RES_BAD_ARG;
goto error;
}
@@ -584,9 +588,12 @@ parse_per_band_phase_fn
if(phase[0].wlen[0] < phase[-1].wlen[1]
|| phase[0].wlen[0] == phase[-1].wlen[0]) {
log_err(rnsf,
- "%s:%lu: the phase function must be sorted in ascending order of "
- "wavelength and must not overlap.\n",
- txtrdr_get_name(txtrdr), (unsigned long)txtrdr_get_line_num(txtrdr));
+ "%s:%lu: the phase functions must be sorted in ascending order of "
+ "wavelengths and must not overlap (phase function %lu in [%g, %g] nm; "
+ "phase function %lu in [%g %g] nm).\n",
+ txtrdr_get_name(txtrdr), (unsigned long)txtrdr_get_line_num(txtrdr),
+ (unsigned long)(i-1), phase[-1].wlen[0], phase[-1].wlen[1],
+ (unsigned long)(i), phase[ 0].wlen[0], phase[ 0].wlen[1]);
res = RES_BAD_ARG;
goto error;
}