To: J3 J3/07-117 Subject: Feature creep in Clause 13 From: Van Snyder Date: 2007 January 22 1 Edits Edits refer to 07-007. Page and line numbers are displayed in the margin. Absent other instructions, a page and line number or line number range implies all of the indicated text is to be replaced by associated text, while a page and line number followed by + (-) indicates that associated text is to be inserted after (before) the indicated line. Remarks are noted in the margin, or appear between [ and ] in the text. 1.1 More Bessel functions Bessel functions of general order are usually computed using a Miller algorithm. Therefore, to compute Jn (x) it is necessary to compute Jn-1 (x). Furthermore, Bessel functions of several consecutive orders are frequently needed, for example for Neumann expansions. [359:8] ------------------------------------------------------------------ [Editor: Add "or BESSEL JN (N1,N2,X)".] [359:10] ----------------------------------------------------------------- Class. Case (i): BESSEL JN (N,X) is elemental. Case (ii): BESSEL JN (N1,N2,X) is transformational. [359:12+] ---------------------------------------------------------------- N1 shall be of type integer and nonnegative. N2 shall be of type integer and nonnegative. [359:14] ----------------------------------------------------------------- Result Characteristics. Same type and kind as X. Case (i): The result of BESSEL JN (N,X) is scalar. Case (ii): The result of BESSEL JN (N1,N2,X) is a rank-one array with extent MAX(N2-N1+1,0). [359:15-16] -------------------------------------------------------------- Result Value. Case (i): The result value of BESSEL JN (N,X) is a processor-dependent approximation to the Bessel function of the first kind of order N of X. Case (ii): Element i of the result value of BESSEL JN (N1,N2,X) is a processor-dependent approximation to the Bessel function of the first kind of order N1+i - 1 of X. [360:2] ------------------------------------------------------------------ [Editor: Add "or BESSEL YN (N1,N2,X)".] [360:4] ------------------------------------------------------------------ Class. Case (i): BESSEL YN (N,X) is elemental. Case (ii): BESSEL YN (N1,N2,X) is transformational. [360:6+] ----------------------------------------------------------------- N1 shall be of type integer and nonnegative. N2 shall be of type integer and nonnegative. [360:8] ------------------------------------------------------------------ Result Characteristics. Same type and kind as X. Case (i): The result of BESSEL YN (N,X) is scalar. Case (ii): The result of BESSEL YN (N1,N2,X) is a rank-one array with extent MAX(N2-N1+1,0). [360:9-10] --------------------------------------------------------------- Result Value. Case (i): The result value of BESSEL YN (N,X) is a processor-dependent approximation to the Bessel function of the first kind of order N of X. Case (ii): Element i of the result value of BESSEL YN (N1,N2,X) is a processor-dependent approximation to the Bessel function of the second kind of order N1+i - 1 of X. 1.2 Another shift function We have SHIFT, SHIFTL and SHIFTR, but only DSHIFTL and DSHIFTR. [375:26+] ---------------------------------------------------------------- 13.7.55 1 DSHIFT (I,J,SHIFT) 2 Description. Combined shift. Class. Elemental function. Arguments. I shall be of type integer or bits. J shall be of type integer or bits. SHIFT shall be of type integer. Its magnitude shall be less than or equal to BIT SIZE(I). Result Characteristics. Same as I. Result Value. If SHIFT is nonnegative the result value is the same as DSHIFTL(I,J,SHIFT). If SHIFT is negative the result value is the same as DSHIFTR(I,J,-SHIFT). 1.3 Embellishment of NORM2 [411:16] ----------------------------------------------------------------- [Editor: Insert "[, DIM]" after "X".] [411:19-23] -------------------------------------------------------------- Arguments. X shall be a real array. DIM (optional) shall be an integer scalar. The corresponding actual argument shall not be an optional dummy argument Result Characteristics. The result is of the same type and type parameters as X. It is scalar if DIM is absent; otherwise the result has rank n - 1 and shape [d1 , d2 , . . . , dDIM-1 , dDIM+1 , . . . , dn ], where n is the rank of X and [d1 , d2 , . . . , dn ] is the shape of X.] Result Value. Case (i): The result of NORM2(X) has a value equal to a processor-dependent approxima- tion to the generalized L2 norm of X, which is the square root of the sum of the squares of the elements of X. Case (ii): The result of NORM2(X,DIM=DIM) has a value equal to that of NORM2(X) if X has rank one. Otherwise, the value of element (s1 , s2 , . . . , sDIM-1 , sDIM+1 , . . . sn ) of the result is equal to NORM2(X(s1 , s2 , . . . , sDIM-1 , :, sDIM+1 , . . . sn )). It is recommended that the processor compute the result without undue overflow or underflow. [411:24] ----------------------------------------------------------------- [ 1.0 2.0 ] [Editor: Append "If X has the value [ ] then NORM(X,DIM=1) is [ 3.0 4.0 ] [3.162, 4.472] (approximately) and NORM(X,DIM=2) is [2.236, 5.0] (approximately)."]