Parent Directory | Revision Log
Sticky Revision: |
Sources inside, compilation outside.
Renamed procedure fxhyp_loop_ik to invert_zoom_x. Bug fix. clat is now in rad so there should be no conversion in fyhyp. (This bug had an effect only if clat was /= 0.) No need for heavyside to be double precision. Removed variable tnom of module iniadvtrac_m. Was redundant with tname.
clon and clat from module serre are now in rad instead of degrees. They are only used in rad, so we do only one conversion when we read them.
Extracted the case grossismx == 1 from procedure fxhyp_loop_ik up into procedure fxhyp. Since we have to do the test somewhere, better to do it up there. The logic gets much clearer. Also, a lot of computations are not needed in the case grossismx == 1. We could then remove arguments ik and decalx of fxhyp_loop_ik.
Moved some processing from fxhyp_loop_ik to fxhyp. Now fxhyp_loop_ik does not necessarily give longitudes near [-pi, pi]. In fxhyp, we look in rlonm025 whether we need to move the array toward [-pi, pi]. If so, we apply the same move to all grids: rlonm025, rlonv, rlonp025, rlonu and the corresponding derivatives. The move itself is done by the new procedure principal_cshift. This revision makes the logic clearer. (For example, we do not have a saved variable is2 in fxhyp_loop_ik any longer and we remove a test on ik in fxhyp_loop_ik.) Fixed a bad error message in fxhyp_loop_ik: talked about rlonu when xvrai is not always rlonu.
Added some test programs. In fxhyp_loop_ik, changed precision from 1e-3 to 1e-6. Reset initial value of xo1 to first guess of xi instead of final value of xi for previous i (better logic).
In procedure fxhyp_loop_ik, when testing whether xvrai is between -pi and pi, changed back the boundaries from -pi - 1d-5 to - pi_d - 0.1 and from pi + 1d-5 to pi_d + 0.1. Fixed the logic: for ik = 1, we rearrange longitudes between -pi and pi, if necessary. For other values of ik, we apply the same rearrangement. In module serre, change the default values of dzoomx and dzoomy to 0.2, because dzoomx must be > 0 when grossismx > 1. With this revision, we recover the results of revision 120 and we remove the bug that appeared with clon = 20.
In procedure fxhyp, extracted the body of the loop on ik into a new procedure: fxhyp_loop_ik. dzoomx and dzoomy must now be fractions of the entire range, they cannot be ranges in degrees or rad. In fxhyp, force Xf(2 * nmax) = pi_d instead of possibly doing it in fxhyp_loop_ik. In fxhyp_loop_ik, when testing whether xvrai is between -pi and pi, changed the boundaries from -pi - 0.1 to - pi_d - 1d-5 and from pi + 0.1 to pi_d + 1d-5. This reveals a misconception of the code. Therefore, this version does not work.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
ViewVC Help | |
Powered by ViewVC 1.1.21 |