|
Magic Mailing List |
|
From: R. Timothy Edwards (tim AT stravinsky DOT jhuapl.edu) Date: Fri Jun 27 2003 - 21:49:31 EDT
Dear Haikun,
The code problems are clearly from IRSIM (sim.c line 719 in
version 9.6, maybe around line 705 in 9.5), not magic:
---------------------
double lmbd = atof(targv[2]) / 100.0;
if (lmbd != LAMBDA)
{
rsimerror(simfname, lineno, "WARNING\7: sim "
"file lambda (%.2lfu) != config lambda"
" (%.2lfu)\n", lmbd, LAMBDA);
---------------------
If lmbd != LAMBDA but the error message reports the same
number, then probably there's a roundoff error to less than
the precision shown in the print statement. Chances are
good that the problem goes away if you replace
if (lmbd != LAMBDA)
by
if (fabs(lmbd - LAMBDA) < 0.001)
If you're concerned that 1nm resolution isn't good enough,
you can compare to a smaller number. . .
I don't recall having messed with the code where the problem
shows up, so I suspect you'll find the same behavior in
irsim 9.5 and 9.6.
Check the .sim file itself, though, in the comment (first) line;
make sure that magic is writing out the lambda value 0.01 to the
correct precision, as the roundoff error might occur in magic (in
the calculation of EFScale), not IRSIM.
Regards,
Tim
|
|
|
|