|
DataMuseum.dkPresents historical artifacts from the history of: RC4000/8000/9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC4000/8000/9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 3072 (0xc00) Types: TextFile Names: »hlmutrtx«
└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ. Detaljer om "HC8000" projekt. └─⟦0364f57e3⟧ └─⟦787c125fb⟧ »adjprocfile« └─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ. └─⟦b2ec5d50f⟧ └─⟦787c125fb⟧ »adjprocfile« └─⟦this⟧
; hlm univ tr * page 1 26 10 78, 11.22; ; hlm_u_tr ; ******** if listing.yes char nl ff nl hlm_u_tr = set 1 hlm_u_tr = algol external long procedure hlm_u_tr ________________________________ _ (x, i, tr_param, X, w); real x; integer i, w; array tr_param; long X; comment hlm_u_tr (call and return, logn procedure) the value of the first coordinate in an n-dimensional helmert transformation, X = X0 + '6*A*x. Note that there is an implicit scale factor of '6, because the input coordinates are assumed reals with meters as the unit and the output coordinates are longs with '-6 m as the unit. x (call, real) the input coordinates in units of m. the individual coordinates are addressed with JENSENs device, eg. as array elements x(i) or as cae i of (x, y, .. with i as the indicating variable. i (call, integer) the addressing variable of the input coordinates used with JENSENs device (see x). tr_param (call, array) the parameters of the transformation tr_param(1), first two bytes = dimension of the coordinates tr_param(1), last two bytes = not used _ for invar/outvar. tr_param(2), long fielded = first coordinate of X0 ....... tr_param(2+dim-1), lng f = last coordinate of X0 tr_param(2+dim) = first elem of matrix A = A11 ....... matrix A row-wize tr_param(2+dim+dim**2-1) = last elem of matrix A =Adimdim note the implicit scale factor of '6. X (return, long) the output coordinates, addressed as X(w) etc with JENSENs device. note that case w of (N, E, ... cannot be used as X may no be an expression. w (call, integer) the addressing index of the output coordinate; \f comment hlm univ tr * page 2 26 10 78, 11.22 0 1 2 3 4 5 6 7 8 9 ; comment the call may e.g. be hlm_u_tr(case i of (x, y, z), i, trparam, NE(w+11), w) ext. proc sqrt Prog.: Knud Poder, OCT 1978 GI lib. no. : ; begin long wrk; real r_wrk; integer i0, dim, dim_1; integer field dim_f; long field X_f; dim_f := 2; dim := tr_param.dim_f; dim_1 := dim + 1; X_f := 8 - 4*dim_1; i0 := 2 - dim_1; for w := 1 step 1 until dim do begin i0 := i0 + dim_1; r_wrk := 0.0; X_f := dim_1 shift 2 + X_f; for i := 1 step 1 until dim do r_wrk := r_wrk + x*tr_param(i0+i); wrk := '6*r_wrk; X := tr_param.X_f + wrk; end; w := 1; hlm_u_tr := X; end hlm_u_tr; end; if ok.no mode warning.yes if warning.yes (mode 0.yes message hlm_u_tr not ok lookup hlm_u_tr) end finis ▶EOF◀