code 35130; real procedure LOG ONE PLUS X(X); value X; real X; comment COMPUTES LN(1+X) FOR X > -1; if X = 0 then LOG ONE PLUS X:= 0 else if X < -0.2928 or X > 0.4142 then LOG ONE PLUS X:= LN(1+X) else begin real Y,Z; Z:= X/(X+2); Y:= Z*Z; LOG ONE PLUS X:= Z*(2+ Y* ( .66666 66666 63366 + Y* ( .40000 00012 06045 + Y* ( .28571 40915 90488 + Y* ( .22223 82333 2791 + Y* ( .18111 36267 967 + Y* .16948 21248 8)))))) end LOG ONE PLUS X; eop