In a message dated 6/16/2005 7:20:06 P.M. Mountain Daylight Time,
teslalist@xxxxxxxxxxxxxxxxxxxxxxx [Terry] writes:
>The run parameters were:
>=================
>ScanTesla-Special V-6.10 June 14, 2005 Terry Fritz
C1 2.770000e-008 2.770000e-008 1.000000e-009
R1 5.000000e-001 5.000000e-001 1.000000e-001
L1 5.000000e-005 2.500000e-004 1.000000e-007
L2 7.540000e-002 7.540000e-002 5.000000e-003
K12 1.000000e-002 9.900000e-001 1.000000e-003
R2 3.910000e+002 3.910000e+002 1.000000e+000
C2 4.420000e-011 4.420000e-011 1.000000e-012
C3 3.830000e-012 3.830000e-012 1.000000e-012
R3 2.200000e+005 2.200000e+005 1.000000e+003
T1 0.000000e+000 1.000000e-003 -1.000000e-007
Vrail 3.400000e+002
VCpri_init 0.000000e+000
DwellTime 0.300000e-003
Current_Limit 5.000000e+002
BangEnergy_Limit 1.250000e+001
Goal Type 0
>=================
>
Just a suggestion or two...
Looking at the output here, I see X.YY with exponent. E.g., two
digits of precision in floating point.
I am curious if you could speed up the run time by specifying single
precision floating point. If I had the tools here I'd give it a shot. Of
course, the floating point hardware may be very pleased with Doubles @
64-bit, and it might not work.
Another possibility would be using something like GCC's fast integer
library which emulates floating point by allocating N bits to the regular
data and 64-N bits to exponent. It looks to me like this might have
trouble, with the range of data (10^ -12 to 10^+5 looks like a range of
10^17).
A final possibility is to trade off memory for speed by pre-calculating
what can be pre-calculated. When I was writing a magnetic / electric field
plotter this helped a great deal; I precalculed square root lookups for
the SQRT [ (X1-X2)^2 + SQRT (Y1-Y2)^2 ], and this helped a great deal.
I hope these suggestions might help, or perhaps trigger a suggestion that
does work?
Thanks,
Dave