diff --git a/books/bookvol10.5.pamphlet b/books/bookvol10.5.pamphlet index 1262b46..8d67bee 100644 --- a/books/bookvol10.5.pamphlet +++ b/books/bookvol10.5.pamphlet @@ -2137,56 +2137,56 @@ BlasLevelOne() : Exports == Implementation where Exports == with dcabs1: CDF -> DF - ++ dcabs1(z) computes (+ (abs (realpart z)) (abs (imagpart z))) + ++dcabs1(z) computes (+ (abs (realpart z)) (abs (imagpart z))) ++ ++X t1:Complex DoubleFloat := complex(1.0,0) ++X dcabs1(t1) dasum: (SI, DX, SI) -> DF - ++ dasum(n,array,incx) computes the sum of n elements in array - ++ using a stride of incx + ++dasum(n,array,incx) computes the sum of n elements in array + ++using a stride of incx ++ - ++X dx:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] + ++X dx:PRIMARR(DFLOAT):=[[1.0,2.0,3.0,4.0,5.0,6.0]] ++X dasum(6,dx,1) ++X dasum(3,dx,2) daxpy: (SI, DF, DX, SI, DX, SI) -> DX - ++ daxpy(n,da,x,incx,y,incy) computes a y = a*x + y - ++ for each of the chosen elements of the vectors x and y - ++ and a constant multiplier a - ++ Note that the vector y is modified with the results. + ++daxpy(n,da,x,incx,y,incy) computes a y = a*x + y + ++for each of the chosen elements of the vectors x and y + ++and a constant multiplier a + ++Note that the vector y is modified with the results. ++ - ++X x:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] - ++X y:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] + ++X x:PRIMARR(DFLOAT):=[[1.0,2.0,3.0,4.0,5.0,6.0]] + ++X y:PRIMARR(DFLOAT):=[[1.0,2.0,3.0,4.0,5.0,6.0]] ++X daxpy(6,2.0,x,1,y,1) ++X y - ++X m:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0] ] - ++X n:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] + ++X m:PRIMARR(DFLOAT):=[[1.0,2.0,3.0]] + ++X n:PRIMARR(DFLOAT):=[[1.0,2.0,3.0,4.0,5.0,6.0]] ++X daxpy(3,-2.0,m,1,n,2) ++X n dcopy: (SI, DX, SI, DX, SI) -> DX - ++ dcopy(n,x,incx,y,incy) copies y from x - ++ for each of the chosen elements of the vectors x and y - ++ Note that the vector y is modified with the results. + ++dcopy(n,x,incx,y,incy) copies y from x + ++for each of the chosen elements of the vectors x and y + ++Note that the vector y is modified with the results. ++ - ++X x:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] - ++X y:PRIMARR(DFLOAT):=[ [0.0,0.0,0.0,0.0,0.0,0.0] ] + ++X x:PRIMARR(DFLOAT):=[[1.0,2.0,3.0,4.0,5.0,6.0]] + ++X y:PRIMARR(DFLOAT):=[[0.0,0.0,0.0,0.0,0.0,0.0]] ++X dcopy(6,x,1,y,1) ++X y - ++X m:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0] ] - ++X n:PRIMARR(DFLOAT):=[ [0.0,0.0,0.0,0.0,0.0,0.0] ] + ++X m:PRIMARR(DFLOAT):=[[1.0,2.0,3.0]] + ++X n:PRIMARR(DFLOAT):=[[0.0,0.0,0.0,0.0,0.0,0.0]] ++X dcopy(3,m,1,n,2) ++X n ddot: (SI, DX, SI, DX, SI) -> DF - ++ ddot(n,x,incx,y,incy) computes the vector dot product - ++ of elements from the vector x and the vector y - ++ If the indicies are negative the elements are taken - ++ relative to the far end of the vector. + ++ddot(n,x,incx,y,incy) computes the vector dot product + ++of elements from the vector x and the vector y + ++If the indicies are negative the elements are taken + ++relative to the far end of the vector. ++ - ++X x:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0] ] - ++X y:PRIMARR(DFLOAT):=[ [5.0,6.0,7.0,8.0,9.0] ] + ++X x:PRIMARR(DFLOAT):=[[1.0,2.0,3.0,4.0,5.0]] + ++X y:PRIMARR(DFLOAT):=[[5.0,6.0,7.0,8.0,9.0]] ++X ddot(0,a,1,b,1) -- handle 0 elements ==> 0 ++X ddot(3,a,1,b,1) -- (1,2,3) * (5,6,7) ==> 38.0 ++X ddot(3,a,1,b,2) -- increment = 2 in b (1,2,3) * (5,7,9) ==> 46.0 @@ -2196,28 +2196,28 @@ BlasLevelOne() : Exports == Implementation where ++X ddot(3,a,-2,b,-2) -- (5,3,1) * (9,7,5) ==> 71.0 dnrm2: (SI, DX, SI) -> DF - ++ dnrm2 takes the norm of the vector, ||x|| + ++dnrm2 takes the norm of the vector, ||x|| ++ - ++X a:PRIMARR(DFLOAT):=[ [3.0, -4.0, 5.0, -7.0, 9.0] ] + ++X a:PRIMARR(DFLOAT):=[[3.0, -4.0, 5.0, -7.0, 9.0]] ++X dnrm2(3,a,1) -- 7.0710678118654755 = sqrt(3.0^2 + -4.0^2 + 5.0^2) ++X dnrm2(5,a,1) -- 13.416407864998739 = sqrt(180.0) ++X dnrm2(3,a,2) -- 10.72380529476361 = sqrt(115.0) drotg: (DF, DF, DF, DF) -> DX - ++ drotg computes a 2D plane Givens rotation spanned by two - ++ coordinate axes. + ++drotg computes a 2D plane Givens rotation spanned by two + ++coordinate axes. ++ ++X a:MATRIX(DFLOAT):=[[6,5,0],[5,1,4],[0,4,3]] ++X drotg(elt(a,1,1),elt(a,1,2),0.0D0,0.0D0) drot: (SI, DX, SI, DX, SI, DF, DF) -> LDX - ++ drot computes a 2D plane Givens rotation spanned by two - ++ coordinate axes. It modifies the arrays in place. - ++ The call drot(n,dx,incx,dy,incy,c,s) has the dx array which - ++ contains the y axis locations and dy which contains the - ++ y axis locations. They are rotated in parallel where - ++ c is the cosine of the angle and s is the sine of the angle and - ++ c^2+s^2 = 1 + ++drot computes a 2D plane Givens rotation spanned by two + ++coordinate axes. It modifies the arrays in place. + ++The call drot(n,dx,incx,dy,incy,c,s) has the dx array which + ++contains the y axis locations and dy which contains the + ++y axis locations. They are rotated in parallel where + ++c is the cosine of the angle and s is the sine of the angle and + ++c^2+s^2 = 1 ++ ++X dx:PRIMARR(DFLOAT):=[[6,0, 1.0, 4.0, -1.0, -1.0]] ++X dy:PRIMARR(DFLOAT):=[[5.0, 1.0, -4.0, 4.0, -4.0]] @@ -2229,9 +2229,9 @@ BlasLevelOne() : Exports == Implementation where ++X dy -- dy has been modified dscal: (SI, DF, DX, SI) -> DX - ++ dscal scales each element of the vector by the scalar so - ++ dscal(n,da,dx,incx) = da*dx for n elements, incremented by incx - ++ Note that the dx array is modified in place. + ++dscal scales each element of the vector by the scalar so + ++dscal(n,da,dx,incx) = da*dx for n elements, incremented by incx + ++Note that the dx array is modified in place. ++ ++X dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] ++X dscal(6,2.0,dx,1) @@ -2241,8 +2241,8 @@ BlasLevelOne() : Exports == Implementation where ++X dx dswap: (SI, DX, SI, DX, SI) -> LDX - ++ dswap swaps elements from the first vector with the second - ++ Note that the arrays are modified in place. + ++dswap swaps elements from the first vector with the second + ++Note that the arrays are modified in place. ++ ++X dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] ++X dy:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] @@ -2255,10 +2255,10 @@ BlasLevelOne() : Exports == Implementation where ++X dswap(5,dx,1,dy,-1) dzasum: (SI, PCDF, SI) -> DF - ++ dzasum takes the sum over all of the array where each - ++ element of the array sum is the sum of the absolute - ++ value of the real part and the absolute value of the - ++ imaginary part of each array element: + ++dzasum takes the sum over all of the array where each + ++element of the array sum is the sum of the absolute + ++value of the real part and the absolute value of the + ++imaginary part of each array element: ++ for i in array do sum = sum + (real(a(i)) + imag(a(i))) ++ ++X d:PRIMARR(COMPLEX(DFLOAT)):=[[1.0+2.0*%i,-3.0+4.0*%i,5.0-6.0*%i]] @@ -2267,8 +2267,8 @@ BlasLevelOne() : Exports == Implementation where ++X dzasum(-3,d,1) -- 0.0 dznrm2: (SI, PCDF, SI) -> DF - ++ dznrm2 returns the norm of a complex vector. It computes - ++ sqrt(sum(v*conjugate(v))) + ++dznrm2 returns the norm of a complex vector. It computes + ++sqrt(sum(v*conjugate(v))) ++ ++X a:PRIMARR(COMPLEX(DFLOAT)) ++X a:=[[3.+4.*%i,-4.+5.*%i,5.+6.*%i,7.-8.*%i,-9.-2.*%i]] @@ -2281,9 +2281,9 @@ BlasLevelOne() : Exports == Implementation where ++X dznrm2(1,a,2) -- should be 5.0 icamax: (INT, PCF, INT) -> INT - ++ icamax computes the largest absolute value of the elements - ++ of the array and returns the index of the first instance - ++ of the maximum + ++icamax computes the largest absolute value of the elements + ++of the array and returns the index of the first instance + ++of the maximum ++ ++X a:PRIMARR(COMPLEX(FLOAT)) ++X a:=[[3.+4.*%i,-4.+5.*%i,5.+6.*%i,7.-8.*%i,-9.-2.*%i]] @@ -2294,9 +2294,9 @@ BlasLevelOne() : Exports == Implementation where ++X icamax(3,a,2) -- should be 1 idamax: (INT, DX, INT) -> INT - ++ idamax computes the largest absolute value of the elements - ++ of the array and returns the index of the first instance - ++ of the maximum. + ++idamax computes the largest absolute value of the elements + ++of the array and returns the index of the first instance + ++of the maximum. ++ ++X a:PRIMARR(DFLOAT):=[[3.0, 4.0, -3.0, 5.0, -1.0]] ++X idamax(5,a,1) -- should be 3 @@ -2311,9 +2311,9 @@ BlasLevelOne() : Exports == Implementation where ++X idamax(5,a,1) -- should be 3 isamax: (INT, SX, INT) -> INT - ++ isamax computes the largest absolute value of the elements - ++ of the array and returns the index of the first instance - ++ of the maximum. + ++isamax computes the largest absolute value of the elements + ++of the array and returns the index of the first instance + ++of the maximum. ++ ++X a:PRIMARR(FLOAT):=[[3.0, 4.0, -3.0, 5.0, -1.0]] ++X isamax(5,a,1) -- should be 3 @@ -2328,9 +2328,9 @@ BlasLevelOne() : Exports == Implementation where ++X isamax(5,a,1) -- should be 3 izamax: (SI, PCDF, SI) -> INT - ++ izamax computes the largest absolute value of the elements - ++ of the array and returns the index of the first instance - ++ of the maximum. + ++izamax computes the largest absolute value of the elements + ++of the array and returns the index of the first instance + ++of the maximum. ++ ++X a:PRIMARR(COMPLEX(DFLOAT)) ++X a:=[[3.+4.*%i,-4.+5.*%i,5.+6.*%i,7.-8.*%i,-9.-2.*%i]] @@ -2341,10 +2341,10 @@ BlasLevelOne() : Exports == Implementation where ++X izamax(3,a,2) -- should be 1 zaxpy: (SI, CDF, PCDF, SI, PCDF, SI) -> PCDF - ++ zaxpy(n,da,x,incx,y,incy) computes a y = a*x + y - ++ for each of the chosen elements of the vectors x and y - ++ and a constant multiplier a - ++ Note that the vector y is modified with the results. + ++zaxpy(n,da,x,incx,y,incy) computes a y = a*x + y + ++for each of the chosen elements of the vectors x and y + ++and a constant multiplier a + ++Note that the vector y is modified with the results. ++ ++X a:PRIMARR(COMPLEX(DFLOAT)) ++X a:=[[3.+4.*%i, -4.+5.*%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*%i]] diff --git a/buglist b/buglist index ceb1642..1a8b7e3 100644 --- a/buglist +++ b/buglist @@ -1764,74 +1764,6 @@ typos 40305: "\\indented{1}{mapDown!(t,p,f) returns \\spad{t} after traversing \\spad{t} in \"preorder\"} \\indented{1}{(node then left then right) fashion replacing the successive} \\indented{1}{interior nodes as follows. Let \\spad{l} and \\spad{r} denote the left and} \\indented{1}{right subtrees of \\spad{t.} The root value \\spad{x} of \\spad{t} is replaced by \\spad{p.}} \\indented{1}{Then f(value \\spad{l,} value \\spad{r,} \\spad{p),} where \\spad{l} and \\spad{r} denote the left} \\indented{1}{and right subtrees of \\spad{t,} is evaluated producing two values} \\indented{1}{pl and \\spad{pr.} Then \\spad{mapDown!(l,pl,f)} and \\spad{mapDown!(l,pr,f)}} \\indented{1}{are evaluated.} \\blankline \\spad{X} T1:=BalancedBinaryTree Integer \\spad{X} t2:=balancedBinaryTree(4, 0)$T1 \\spad{X} setleaves!(t2,[1,2,3,4]::List(Integer)) \\spad{X} adder3(i:Integer,j:Integer,k:Integer):List Integer \\spad{==} [i+j,j+k] \\spad{X} mapDown!(t2,4::INT,adder3) \\spad{X} \\spad{t2}" ========================================================================= -typos 40304: - ->compiling BLAS1.spad to BLAS1.nrlib - ---->bookvol10.5.pamphlet-->BlasLevelOne((dcabs1 (DF CDF))): Improper first word in comments: -"\\indented{1}{dcabs1(z) computes \\spad{(+} (abs (realpart \\spad{z))} (abs (imagpart z)))} \\blankline \\spad{X} t1:Complex DoubleFloat \\spad{:=} complex(1.0,0) \\spad{X} dcabs1(t1)" - ---->bookvol10.5.pamphlet-->BlasLevelOne((dasum (DF SI DX SI))): Improper first word in comments: ---->bookvol10.5.pamphlet-->BlasLevelOne((dasum (DF SI DX SI))): Missing left bracket -"\\indented{1}{dasum(n,array,incx) computes the sum of \\spad{n} elements in array} \\indented{1}{using a stride of incx} \\blankline \\spad{X} dx:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] \\spad{X} dasum(6,dx,1) \\spad{X} dasum(3,dx,2)" - ---->bookvol10.5.pamphlet-->BlasLevelOne((daxpy (DX SI DF DX SI DX SI))): Improper first word in comments: ---->bookvol10.5.pamphlet-->BlasLevelOne((daxpy (DX SI DF DX SI DX SI))): Missing left bracket ---->bookvol10.5.pamphlet-->BlasLevelOne((daxpy (DX SI DF DX SI DX SI))): Missing left bracket ---->bookvol10.5.pamphlet-->BlasLevelOne((daxpy (DX SI DF DX SI DX SI))): Missing left bracket ---->bookvol10.5.pamphlet-->BlasLevelOne((daxpy (DX SI DF DX SI DX SI))): Missing left bracket -"\\indented{1}{daxpy(n,da,x,incx,y,incy) computes a \\spad{y} = a*x + \\spad{y}} \\indented{1}{for each of the chosen elements of the vectors \\spad{x} and \\spad{y}} \\indented{1}{and a constant multiplier a} \\indented{1}{Note that the vector \\spad{y} is modified with the results.} \\blankline \\spad{X} x:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] \\spad{X} y:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] \\spad{X} daxpy(6,2.0,x,1,y,1) \\spad{X} \\spad{y} \\spad{X} m:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0] ] \\spad{X} n:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] \\spad{X} daxpy(3,-2.0,m,1,n,2) \\spad{X} \\spad{n}" - ---->bookvol10.5.pamphlet-->BlasLevelOne((dcopy (DX SI DX SI DX SI))): Improper first word in comments: ---->bookvol10.5.pamphlet-->BlasLevelOne((dcopy (DX SI DX SI DX SI))): Missing left bracket ---->bookvol10.5.pamphlet-->BlasLevelOne((dcopy (DX SI DX SI DX SI))): Missing left bracket ---->bookvol10.5.pamphlet-->BlasLevelOne((dcopy (DX SI DX SI DX SI))): Missing left bracket ---->bookvol10.5.pamphlet-->BlasLevelOne((dcopy (DX SI DX SI DX SI))): Missing left bracket -"\\indented{1}{dcopy(n,x,incx,y,incy) copies \\spad{y} from \\spad{x}} \\indented{1}{for each of the chosen elements of the vectors \\spad{x} and \\spad{y}} \\indented{1}{Note that the vector \\spad{y} is modified with the results.} \\blankline \\spad{X} x:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] \\spad{X} y:PRIMARR(DFLOAT):=[ [0.0,0.0,0.0,0.0,0.0,0.0] ] \\spad{X} dcopy(6,x,1,y,1) \\spad{X} \\spad{y} \\spad{X} m:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0] ] \\spad{X} n:PRIMARR(DFLOAT):=[ [0.0,0.0,0.0,0.0,0.0,0.0] ] \\spad{X} dcopy(3,m,1,n,2) \\spad{X} \\spad{n}" - ---->bookvol10.5.pamphlet-->BlasLevelOne((ddot (DF SI DX SI DX SI))): Improper first word in comments: ---->bookvol10.5.pamphlet-->BlasLevelOne((ddot (DF SI DX SI DX SI))): Missing left bracket ---->bookvol10.5.pamphlet-->BlasLevelOne((ddot (DF SI DX SI DX SI))): Missing left bracket -"\\indented{1}{ddot(n,x,incx,y,incy) computes the vector dot product} \\indented{1}{of elements from the vector \\spad{x} and the vector \\spad{y}} \\indented{1}{If the indicies are negative the elements are taken} \\indented{1}{relative to the far end of the vector.} \\blankline \\spad{X} x:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0] ] \\spad{X} y:PRIMARR(DFLOAT):=[ [5.0,6.0,7.0,8.0,9.0] ] \\spad{X} ddot(0,a,1,b,1) \\spad{--} handle 0 elements \\spad{==>} 0 \\spad{X} ddot(3,a,1,b,1) \\spad{--} (1,2,3) * (5,6,7) \\spad{==>} 38.0 \\spad{X} ddot(3,a,1,b,2) \\spad{--} increment = 2 in \\spad{b} (1,2,3) * (5,7,9) \\spad{==>} 46.0 \\spad{X} ddot(3,a,2,b,1) \\spad{--} increment = 2 in a (1,3,5) * (5,6,7) \\spad{==>} 58.0 \\spad{X} ddot(3,a,1,b,-2) \\spad{--} increment = \\spad{-2} in \\spad{b} (1,2,3) * (9,7,5) \\spad{==>} 38.0 \\spad{X} ddot(2,a,-2,b,1) \\spad{--} increment = \\spad{-2} in a (5,3,1) * (5,6,7) \\spad{==>} 50.0 \\spad{X} ddot(3,a,-2,b,-2) \\spad{--} (5,3,1) * (9,7,5) \\spad{==>} 71.0" - ---->bookvol10.5.pamphlet-->BlasLevelOne((dnrm2 (DF SI DX SI))): Improper first word in comments: ---->bookvol10.5.pamphlet-->BlasLevelOne((dnrm2 (DF SI DX SI))): Missing left bracket -"\\indented{1}{dnrm2 takes the norm of the vector, ||x||} \\blankline \\spad{X} a:PRIMARR(DFLOAT):=[ [3.0, -4.0, 5.0, -7.0, 9.0] ] \\spad{X} dnrm2(3,a,1) \\spad{--} 7.0710678118654755 = \\spad{sqrt(3.0^2} + \\spad{-4.0^2} + 5.0^2) \\spad{X} dnrm2(5,a,1) \\spad{--} 13.416407864998739 = sqrt(180.0) \\spad{X} dnrm2(3,a,2) \\spad{--} 10.72380529476361 = sqrt(115.0)" - ---->bookvol10.5.pamphlet-->BlasLevelOne((drotg (DX DF DF DF DF))): Improper first word in comments: -"\\indented{1}{drotg computes a 2D plane Givens rotation spanned by two} \\indented{1}{coordinate axes.} \\blankline \\spad{X} a:MATRIX(DFLOAT):=[[6,5,0],[5,1,4],[0,4,3]] \\spad{X} drotg(elt(a,1,1),elt(a,1,2),0.0D0,0.0D0)" - ---->bookvol10.5.pamphlet-->BlasLevelOne((drot (LDX SI DX SI DX SI DF DF))): Improper first word in comments: -"\\indented{1}{drot computes a 2D plane Givens rotation spanned by two} \\indented{1}{coordinate axes. It modifies the arrays in place.} \\indented{1}{The call drot(n,dx,incx,dy,incy,c,s) has the \\spad{dx} array which} \\indented{1}{contains the \\spad{y} axis locations and dy which contains the} \\indented{1}{y axis locations. They are rotated in parallel where} \\indented{1}{c is the cosine of the angle and \\spad{s} is the sine of the angle and} \\indented{1}{c^2+s^2 = 1} \\blankline \\spad{X} dx:PRIMARR(DFLOAT):=[[6,0, 1.0, 4.0, -1.0, -1.0]] \\spad{X} dy:PRIMARR(DFLOAT):=[[5.0, 1.0, -4.0, 4.0, -4.0]] \\spad{X} drot(5,dx,1,dy,1,0.707106781,0.707106781) \\spad{--} rotate by 45 degrees \\spad{X} \\spad{dx} \\spad{--} \\spad{dx} has been modified \\spad{X} dy \\spad{--} dy has been modified \\spad{X} drot(5,dx,1,dy,1,0.707106781,-0.707106781) \\spad{--} rotate by \\spad{-45} degrees \\spad{X} \\spad{dx} \\spad{--} \\spad{dx} has been modified \\spad{X} dy \\spad{--} dy has been modified" - ---->bookvol10.5.pamphlet-->BlasLevelOne((dscal (DX SI DF DX SI))): Improper first word in comments: -"\\indented{1}{dscal scales each element of the vector by the scalar so} \\indented{1}{dscal(n,da,dx,incx) = da*dx for \\spad{n} elements, incremented by incx} \\indented{1}{Note that the \\spad{dx} array is modified in place.} \\blankline \\spad{X} dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dscal(6,2.0,dx,1) \\spad{X} \\spad{dx} \\spad{X} dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dscal(3,0.5,dx,1) \\spad{X} \\spad{dx}" - ---->bookvol10.5.pamphlet-->BlasLevelOne((dswap (LDX SI DX SI DX SI))): Improper first word in comments: -"\\indented{1}{dswap swaps elements from the first vector with the second} \\indented{1}{Note that the arrays are modified in place.} \\blankline \\spad{X} dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dy:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dswap(5,dx,1,dy,1) \\spad{X} dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dy:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dswap(3,dx,2,dy,2) \\spad{X} dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dy:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dswap(5,dx,1,dy,-1)" - ---->bookvol10.5.pamphlet-->BlasLevelOne((dzasum (DF SI PCDF SI))): Improper first word in comments: -"\\indented{1}{dzasum takes the sum over all of the array where each} \\indented{1}{element of the array sum is the sum of the absolute} \\indented{1}{value of the real part and the absolute value of the} \\indented{1}{imaginary part of each array element:} \\indented{3}{for \\spad{i} in array do sum = sum + (real(a(i)) + imag(a(i)))} \\blankline \\spad{X} d:PRIMARR(COMPLEX(DFLOAT)):=[[1.0+2.0*\\%i,-3.0+4.0*\\%i,5.0-6.0*\\%i]] \\spad{X} dzasum(3,d,1) \\spad{--} 21.0 \\spad{X} dzasum(3,d,2) \\spad{--} 14.0 \\spad{X} dzasum(-3,d,1) \\spad{--} 0.0" - ---->bookvol10.5.pamphlet-->BlasLevelOne((dznrm2 (DF SI PCDF SI))): Improper first word in comments: -"\\indented{1}{dznrm2 returns the norm of a complex vector. It computes} \\indented{1}{sqrt(sum(v*conjugate(v)))} \\blankline \\spad{X} a:PRIMARR(COMPLEX(DFLOAT)) \\spad{X} a:=[[3.+4.*\\%i,-4.+5.*\\%i,5.+6.*\\%i,7.-8.*\\%i,-9.-2.*\\%i]] \\spad{X} dznrm2(5,a,1) \\spad{--} should be 18.028 \\spad{X} dznrm2(3,a,2) \\spad{--} should be 13.077 \\spad{X} dznrm2(3,a,1) \\spad{--} should be 11.269 \\spad{X} dznrm2(3,a,-1) \\spad{--} should be 0.0 \\spad{X} dznrm2(-3,a,-1) \\spad{--} should be 0.0 \\spad{X} dznrm2(1,a,1) \\spad{--} should be 5.0 \\spad{X} dznrm2(1,a,2) \\spad{--} should be 5.0" - ---->bookvol10.5.pamphlet-->BlasLevelOne((icamax (INT INT PCF INT))): Improper first word in comments: -"\\indented{1}{icamax computes the largest absolute value of the elements} \\indented{1}{of the array and returns the index of the first instance} \\indented{1}{of the maximum} \\blankline \\spad{X} a:PRIMARR(COMPLEX(FLOAT)) \\spad{X} a:=[[3.+4.*\\%i,-4.+5.*\\%i,5.+6.*\\%i,7.-8.*\\%i,-9.-2.*\\%i]] \\spad{X} icamax(5,a,1) \\spad{--} should be 3 \\spad{X} icamax(0,a,1) \\spad{--} should be \\spad{-1} \\spad{X} icamax(5,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} icamax(3,a,1) \\spad{--} should be 2 \\spad{X} icamax(3,a,2) \\spad{--} should be 1" - ---->bookvol10.5.pamphlet-->BlasLevelOne((idamax (INT INT DX INT))): Improper first word in comments: -"\\indented{1}{idamax computes the largest absolute value of the elements} \\indented{1}{of the array and returns the index of the first instance} \\indented{1}{of the maximum.} \\blankline \\spad{X} a:PRIMARR(DFLOAT):=[[3.0, 4.0, -3.0, 5.0, -1.0]] \\spad{X} idamax(5,a,1) \\spad{--} should be 3 \\spad{X} idamax(3,a,1) \\spad{--} should be 1 \\spad{X} idamax(0,a,1) \\spad{--} should be \\spad{-1} \\spad{X} idamax(-5,a,1) \\spad{--} should be \\spad{-1} \\spad{X} idamax(5,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} idamax(5,a,2) \\spad{--} should be 0 \\spad{X} idamax(1,a,0) \\spad{--} should be \\spad{-1} \\spad{X} idamax(1,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} a:PRIMARR(DFLOAT):=[[3.0, 4.0, -3.0, -5.0, -1.0]] \\spad{X} idamax(5,a,1) \\spad{--} should be 3" - ---->bookvol10.5.pamphlet-->BlasLevelOne((isamax (INT INT SX INT))): Improper first word in comments: -"\\indented{1}{isamax computes the largest absolute value of the elements} \\indented{1}{of the array and returns the index of the first instance} \\indented{1}{of the maximum.} \\blankline \\spad{X} a:PRIMARR(FLOAT):=[[3.0, 4.0, -3.0, 5.0, -1.0]] \\spad{X} isamax(5,a,1) \\spad{--} should be 3 \\spad{X} isamax(3,a,1) \\spad{--} should be 1 \\spad{X} isamax(0,a,1) \\spad{--} should be \\spad{-1} \\spad{X} isamax(-5,a,1) \\spad{--} should be \\spad{-1} \\spad{X} isamax(5,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} isamax(5,a,2) \\spad{--} should be 0 \\spad{X} isamax(1,a,0) \\spad{--} should be \\spad{-1} \\spad{X} isamax(1,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} a:PRIMARR(FLOAT):=[[3.0, 4.0, -3.0, -5.0, -1.0]] \\spad{X} isamax(5,a,1) \\spad{--} should be 3" - ---->bookvol10.5.pamphlet-->BlasLevelOne((izamax (INT SI PCDF SI))): Improper first word in comments: -"\\indented{1}{izamax computes the largest absolute value of the elements} \\indented{1}{of the array and returns the index of the first instance} \\indented{1}{of the maximum.} \\blankline \\spad{X} a:PRIMARR(COMPLEX(DFLOAT)) \\spad{X} a:=[[3.+4.*\\%i,-4.+5.*\\%i,5.+6.*\\%i,7.-8.*\\%i,-9.-2.*\\%i]] \\spad{X} izamax(5,a,1) \\spad{--} should be 3 \\spad{X} izamax(0,a,1) \\spad{--} should be \\spad{-1} \\spad{X} izamax(5,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} izamax(3,a,1) \\spad{--} should be 2 \\spad{X} izamax(3,a,2) \\spad{--} should be 1" - ---->bookvol10.5.pamphlet-->BlasLevelOne((zaxpy (PCDF SI CDF PCDF SI PCDF SI))): Improper first word in comments: -"\\indented{1}{zaxpy(n,da,x,incx,y,incy) computes a \\spad{y} = a*x + \\spad{y}} \\indented{1}{for each of the chosen elements of the vectors \\spad{x} and \\spad{y}} \\indented{1}{and a constant multiplier a} \\indented{1}{Note that the vector \\spad{y} is modified with the results.} \\blankline \\spad{X} a:PRIMARR(COMPLEX(DFLOAT)) \\spad{X} a:=[[3.+4.*\\%i, -4.+5.*\\%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*\\%i]] \\spad{X} b:PRIMARR(COMPLEX(DFLOAT)) \\spad{X} b:=[[3.+4.*\\%i, -4.+5.*\\%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*\\%i]] \\spad{X} zaxpy(3,2.0,a,1,b,1) \\spad{X} b:=[[3.+4.*\\%i, -4.+5.*\\%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*\\%i]] \\spad{X} zaxpy(5,2.0,a,1,b,1) \\spad{X} b:=[[3.+4.*\\%i, -4.+5.*\\%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*\\%i]] \\spad{X} zaxpy(3,2.0,a,3,b,3) \\spad{X} b:=[[3.+4.*\\%i, -4.+5.*\\%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*\\%i]] \\spad{X} zaxpy(4,2.0,a,2,b,2)" - -========================================================================= typos 40303: >compiling BTREE.spad to BTREE.nrlib @@ -40555,3 +40487,72 @@ warnings 20465: [1] repSq: pretend(NonNegativeInteger) -- should replace by @ [2] dAndcExp: erg has no value +fixed 20130315.04.tpd.patch +========================================================================= +typos 40304: + +>compiling BLAS1.spad to BLAS1.nrlib + +--->bookvol10.5.pamphlet-->BlasLevelOne((dcabs1 (DF CDF))): Improper first word in comments: +"\\indented{1}{dcabs1(z) computes \\spad{(+} (abs (realpart \\spad{z))} (abs (imagpart z)))} \\blankline \\spad{X} t1:Complex DoubleFloat \\spad{:=} complex(1.0,0) \\spad{X} dcabs1(t1)" + +--->bookvol10.5.pamphlet-->BlasLevelOne((dasum (DF SI DX SI))): Improper first word in comments: +--->bookvol10.5.pamphlet-->BlasLevelOne((dasum (DF SI DX SI))): Missing left bracket +"\\indented{1}{dasum(n,array,incx) computes the sum of \\spad{n} elements in array} \\indented{1}{using a stride of incx} \\blankline \\spad{X} dx:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] \\spad{X} dasum(6,dx,1) \\spad{X} dasum(3,dx,2)" + +--->bookvol10.5.pamphlet-->BlasLevelOne((daxpy (DX SI DF DX SI DX SI))): Improper first word in comments: +--->bookvol10.5.pamphlet-->BlasLevelOne((daxpy (DX SI DF DX SI DX SI))): Missing left bracket +--->bookvol10.5.pamphlet-->BlasLevelOne((daxpy (DX SI DF DX SI DX SI))): Missing left bracket +--->bookvol10.5.pamphlet-->BlasLevelOne((daxpy (DX SI DF DX SI DX SI))): Missing left bracket +--->bookvol10.5.pamphlet-->BlasLevelOne((daxpy (DX SI DF DX SI DX SI))): Missing left bracket +"\\indented{1}{daxpy(n,da,x,incx,y,incy) computes a \\spad{y} = a*x + \\spad{y}} \\indented{1}{for each of the chosen elements of the vectors \\spad{x} and \\spad{y}} \\indented{1}{and a constant multiplier a} \\indented{1}{Note that the vector \\spad{y} is modified with the results.} \\blankline \\spad{X} x:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] \\spad{X} y:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] \\spad{X} daxpy(6,2.0,x,1,y,1) \\spad{X} \\spad{y} \\spad{X} m:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0] ] \\spad{X} n:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] \\spad{X} daxpy(3,-2.0,m,1,n,2) \\spad{X} \\spad{n}" + +--->bookvol10.5.pamphlet-->BlasLevelOne((dcopy (DX SI DX SI DX SI))): Improper first word in comments: +--->bookvol10.5.pamphlet-->BlasLevelOne((dcopy (DX SI DX SI DX SI))): Missing left bracket +--->bookvol10.5.pamphlet-->BlasLevelOne((dcopy (DX SI DX SI DX SI))): Missing left bracket +--->bookvol10.5.pamphlet-->BlasLevelOne((dcopy (DX SI DX SI DX SI))): Missing left bracket +--->bookvol10.5.pamphlet-->BlasLevelOne((dcopy (DX SI DX SI DX SI))): Missing left bracket +"\\indented{1}{dcopy(n,x,incx,y,incy) copies \\spad{y} from \\spad{x}} \\indented{1}{for each of the chosen elements of the vectors \\spad{x} and \\spad{y}} \\indented{1}{Note that the vector \\spad{y} is modified with the results.} \\blankline \\spad{X} x:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0,6.0] ] \\spad{X} y:PRIMARR(DFLOAT):=[ [0.0,0.0,0.0,0.0,0.0,0.0] ] \\spad{X} dcopy(6,x,1,y,1) \\spad{X} \\spad{y} \\spad{X} m:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0] ] \\spad{X} n:PRIMARR(DFLOAT):=[ [0.0,0.0,0.0,0.0,0.0,0.0] ] \\spad{X} dcopy(3,m,1,n,2) \\spad{X} \\spad{n}" + +--->bookvol10.5.pamphlet-->BlasLevelOne((ddot (DF SI DX SI DX SI))): Improper first word in comments: +--->bookvol10.5.pamphlet-->BlasLevelOne((ddot (DF SI DX SI DX SI))): Missing left bracket +--->bookvol10.5.pamphlet-->BlasLevelOne((ddot (DF SI DX SI DX SI))): Missing left bracket +"\\indented{1}{ddot(n,x,incx,y,incy) computes the vector dot product} \\indented{1}{of elements from the vector \\spad{x} and the vector \\spad{y}} \\indented{1}{If the indicies are negative the elements are taken} \\indented{1}{relative to the far end of the vector.} \\blankline \\spad{X} x:PRIMARR(DFLOAT):=[ [1.0,2.0,3.0,4.0,5.0] ] \\spad{X} y:PRIMARR(DFLOAT):=[ [5.0,6.0,7.0,8.0,9.0] ] \\spad{X} ddot(0,a,1,b,1) \\spad{--} handle 0 elements \\spad{==>} 0 \\spad{X} ddot(3,a,1,b,1) \\spad{--} (1,2,3) * (5,6,7) \\spad{==>} 38.0 \\spad{X} ddot(3,a,1,b,2) \\spad{--} increment = 2 in \\spad{b} (1,2,3) * (5,7,9) \\spad{==>} 46.0 \\spad{X} ddot(3,a,2,b,1) \\spad{--} increment = 2 in a (1,3,5) * (5,6,7) \\spad{==>} 58.0 \\spad{X} ddot(3,a,1,b,-2) \\spad{--} increment = \\spad{-2} in \\spad{b} (1,2,3) * (9,7,5) \\spad{==>} 38.0 \\spad{X} ddot(2,a,-2,b,1) \\spad{--} increment = \\spad{-2} in a (5,3,1) * (5,6,7) \\spad{==>} 50.0 \\spad{X} ddot(3,a,-2,b,-2) \\spad{--} (5,3,1) * (9,7,5) \\spad{==>} 71.0" + +--->bookvol10.5.pamphlet-->BlasLevelOne((dnrm2 (DF SI DX SI))): Improper first word in comments: +--->bookvol10.5.pamphlet-->BlasLevelOne((dnrm2 (DF SI DX SI))): Missing left bracket +"\\indented{1}{dnrm2 takes the norm of the vector, ||x||} \\blankline \\spad{X} a:PRIMARR(DFLOAT):=[ [3.0, -4.0, 5.0, -7.0, 9.0] ] \\spad{X} dnrm2(3,a,1) \\spad{--} 7.0710678118654755 = \\spad{sqrt(3.0^2} + \\spad{-4.0^2} + 5.0^2) \\spad{X} dnrm2(5,a,1) \\spad{--} 13.416407864998739 = sqrt(180.0) \\spad{X} dnrm2(3,a,2) \\spad{--} 10.72380529476361 = sqrt(115.0)" + +--->bookvol10.5.pamphlet-->BlasLevelOne((drotg (DX DF DF DF DF))): Improper first word in comments: +"\\indented{1}{drotg computes a 2D plane Givens rotation spanned by two} \\indented{1}{coordinate axes.} \\blankline \\spad{X} a:MATRIX(DFLOAT):=[[6,5,0],[5,1,4],[0,4,3]] \\spad{X} drotg(elt(a,1,1),elt(a,1,2),0.0D0,0.0D0)" + +--->bookvol10.5.pamphlet-->BlasLevelOne((drot (LDX SI DX SI DX SI DF DF))): Improper first word in comments: +"\\indented{1}{drot computes a 2D plane Givens rotation spanned by two} \\indented{1}{coordinate axes. It modifies the arrays in place.} \\indented{1}{The call drot(n,dx,incx,dy,incy,c,s) has the \\spad{dx} array which} \\indented{1}{contains the \\spad{y} axis locations and dy which contains the} \\indented{1}{y axis locations. They are rotated in parallel where} \\indented{1}{c is the cosine of the angle and \\spad{s} is the sine of the angle and} \\indented{1}{c^2+s^2 = 1} \\blankline \\spad{X} dx:PRIMARR(DFLOAT):=[[6,0, 1.0, 4.0, -1.0, -1.0]] \\spad{X} dy:PRIMARR(DFLOAT):=[[5.0, 1.0, -4.0, 4.0, -4.0]] \\spad{X} drot(5,dx,1,dy,1,0.707106781,0.707106781) \\spad{--} rotate by 45 degrees \\spad{X} \\spad{dx} \\spad{--} \\spad{dx} has been modified \\spad{X} dy \\spad{--} dy has been modified \\spad{X} drot(5,dx,1,dy,1,0.707106781,-0.707106781) \\spad{--} rotate by \\spad{-45} degrees \\spad{X} \\spad{dx} \\spad{--} \\spad{dx} has been modified \\spad{X} dy \\spad{--} dy has been modified" + +--->bookvol10.5.pamphlet-->BlasLevelOne((dscal (DX SI DF DX SI))): Improper first word in comments: +"\\indented{1}{dscal scales each element of the vector by the scalar so} \\indented{1}{dscal(n,da,dx,incx) = da*dx for \\spad{n} elements, incremented by incx} \\indented{1}{Note that the \\spad{dx} array is modified in place.} \\blankline \\spad{X} dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dscal(6,2.0,dx,1) \\spad{X} \\spad{dx} \\spad{X} dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dscal(3,0.5,dx,1) \\spad{X} \\spad{dx}" + +--->bookvol10.5.pamphlet-->BlasLevelOne((dswap (LDX SI DX SI DX SI))): Improper first word in comments: +"\\indented{1}{dswap swaps elements from the first vector with the second} \\indented{1}{Note that the arrays are modified in place.} \\blankline \\spad{X} dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dy:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dswap(5,dx,1,dy,1) \\spad{X} dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dy:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dswap(3,dx,2,dy,2) \\spad{X} dx:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dy:PRIMARR(DFLOAT):=[[1.0, 2.0, 3.0, 4.0, 5.0, 6.0]] \\spad{X} dswap(5,dx,1,dy,-1)" + +--->bookvol10.5.pamphlet-->BlasLevelOne((dzasum (DF SI PCDF SI))): Improper first word in comments: +"\\indented{1}{dzasum takes the sum over all of the array where each} \\indented{1}{element of the array sum is the sum of the absolute} \\indented{1}{value of the real part and the absolute value of the} \\indented{1}{imaginary part of each array element:} \\indented{3}{for \\spad{i} in array do sum = sum + (real(a(i)) + imag(a(i)))} \\blankline \\spad{X} d:PRIMARR(COMPLEX(DFLOAT)):=[[1.0+2.0*\\%i,-3.0+4.0*\\%i,5.0-6.0*\\%i]] \\spad{X} dzasum(3,d,1) \\spad{--} 21.0 \\spad{X} dzasum(3,d,2) \\spad{--} 14.0 \\spad{X} dzasum(-3,d,1) \\spad{--} 0.0" + +--->bookvol10.5.pamphlet-->BlasLevelOne((dznrm2 (DF SI PCDF SI))): Improper first word in comments: +"\\indented{1}{dznrm2 returns the norm of a complex vector. It computes} \\indented{1}{sqrt(sum(v*conjugate(v)))} \\blankline \\spad{X} a:PRIMARR(COMPLEX(DFLOAT)) \\spad{X} a:=[[3.+4.*\\%i,-4.+5.*\\%i,5.+6.*\\%i,7.-8.*\\%i,-9.-2.*\\%i]] \\spad{X} dznrm2(5,a,1) \\spad{--} should be 18.028 \\spad{X} dznrm2(3,a,2) \\spad{--} should be 13.077 \\spad{X} dznrm2(3,a,1) \\spad{--} should be 11.269 \\spad{X} dznrm2(3,a,-1) \\spad{--} should be 0.0 \\spad{X} dznrm2(-3,a,-1) \\spad{--} should be 0.0 \\spad{X} dznrm2(1,a,1) \\spad{--} should be 5.0 \\spad{X} dznrm2(1,a,2) \\spad{--} should be 5.0" + +--->bookvol10.5.pamphlet-->BlasLevelOne((icamax (INT INT PCF INT))): Improper first word in comments: +"\\indented{1}{icamax computes the largest absolute value of the elements} \\indented{1}{of the array and returns the index of the first instance} \\indented{1}{of the maximum} \\blankline \\spad{X} a:PRIMARR(COMPLEX(FLOAT)) \\spad{X} a:=[[3.+4.*\\%i,-4.+5.*\\%i,5.+6.*\\%i,7.-8.*\\%i,-9.-2.*\\%i]] \\spad{X} icamax(5,a,1) \\spad{--} should be 3 \\spad{X} icamax(0,a,1) \\spad{--} should be \\spad{-1} \\spad{X} icamax(5,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} icamax(3,a,1) \\spad{--} should be 2 \\spad{X} icamax(3,a,2) \\spad{--} should be 1" + +--->bookvol10.5.pamphlet-->BlasLevelOne((idamax (INT INT DX INT))): Improper first word in comments: +"\\indented{1}{idamax computes the largest absolute value of the elements} \\indented{1}{of the array and returns the index of the first instance} \\indented{1}{of the maximum.} \\blankline \\spad{X} a:PRIMARR(DFLOAT):=[[3.0, 4.0, -3.0, 5.0, -1.0]] \\spad{X} idamax(5,a,1) \\spad{--} should be 3 \\spad{X} idamax(3,a,1) \\spad{--} should be 1 \\spad{X} idamax(0,a,1) \\spad{--} should be \\spad{-1} \\spad{X} idamax(-5,a,1) \\spad{--} should be \\spad{-1} \\spad{X} idamax(5,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} idamax(5,a,2) \\spad{--} should be 0 \\spad{X} idamax(1,a,0) \\spad{--} should be \\spad{-1} \\spad{X} idamax(1,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} a:PRIMARR(DFLOAT):=[[3.0, 4.0, -3.0, -5.0, -1.0]] \\spad{X} idamax(5,a,1) \\spad{--} should be 3" + +--->bookvol10.5.pamphlet-->BlasLevelOne((isamax (INT INT SX INT))): Improper first word in comments: +"\\indented{1}{isamax computes the largest absolute value of the elements} \\indented{1}{of the array and returns the index of the first instance} \\indented{1}{of the maximum.} \\blankline \\spad{X} a:PRIMARR(FLOAT):=[[3.0, 4.0, -3.0, 5.0, -1.0]] \\spad{X} isamax(5,a,1) \\spad{--} should be 3 \\spad{X} isamax(3,a,1) \\spad{--} should be 1 \\spad{X} isamax(0,a,1) \\spad{--} should be \\spad{-1} \\spad{X} isamax(-5,a,1) \\spad{--} should be \\spad{-1} \\spad{X} isamax(5,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} isamax(5,a,2) \\spad{--} should be 0 \\spad{X} isamax(1,a,0) \\spad{--} should be \\spad{-1} \\spad{X} isamax(1,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} a:PRIMARR(FLOAT):=[[3.0, 4.0, -3.0, -5.0, -1.0]] \\spad{X} isamax(5,a,1) \\spad{--} should be 3" + +--->bookvol10.5.pamphlet-->BlasLevelOne((izamax (INT SI PCDF SI))): Improper first word in comments: +"\\indented{1}{izamax computes the largest absolute value of the elements} \\indented{1}{of the array and returns the index of the first instance} \\indented{1}{of the maximum.} \\blankline \\spad{X} a:PRIMARR(COMPLEX(DFLOAT)) \\spad{X} a:=[[3.+4.*\\%i,-4.+5.*\\%i,5.+6.*\\%i,7.-8.*\\%i,-9.-2.*\\%i]] \\spad{X} izamax(5,a,1) \\spad{--} should be 3 \\spad{X} izamax(0,a,1) \\spad{--} should be \\spad{-1} \\spad{X} izamax(5,a,-1) \\spad{--} should be \\spad{-1} \\spad{X} izamax(3,a,1) \\spad{--} should be 2 \\spad{X} izamax(3,a,2) \\spad{--} should be 1" + +--->bookvol10.5.pamphlet-->BlasLevelOne((zaxpy (PCDF SI CDF PCDF SI PCDF SI))): Improper first word in comments: +"\\indented{1}{zaxpy(n,da,x,incx,y,incy) computes a \\spad{y} = a*x + \\spad{y}} \\indented{1}{for each of the chosen elements of the vectors \\spad{x} and \\spad{y}} \\indented{1}{and a constant multiplier a} \\indented{1}{Note that the vector \\spad{y} is modified with the results.} \\blankline \\spad{X} a:PRIMARR(COMPLEX(DFLOAT)) \\spad{X} a:=[[3.+4.*\\%i, -4.+5.*\\%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*\\%i]] \\spad{X} b:PRIMARR(COMPLEX(DFLOAT)) \\spad{X} b:=[[3.+4.*\\%i, -4.+5.*\\%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*\\%i]] \\spad{X} zaxpy(3,2.0,a,1,b,1) \\spad{X} b:=[[3.+4.*\\%i, -4.+5.*\\%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*\\%i]] \\spad{X} zaxpy(5,2.0,a,1,b,1) \\spad{X} b:=[[3.+4.*\\%i, -4.+5.*\\%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*\\%i]] \\spad{X} zaxpy(3,2.0,a,3,b,3) \\spad{X} b:=[[3.+4.*\\%i, -4.+5.*\\%i, 5.+6.*%i, 7.-8.*%i, -9.-2.*\\%i]] \\spad{X} zaxpy(4,2.0,a,2,b,2)" + diff --git a/changelog b/changelog index dc96206..fc39eb1 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,6 @@ +20130315 tpd src/axiom-website/patches.html 20130315.04.tpd.patch +20130315 tpd buglist BLAS1 fixed 40304 +20130315 tpd books/bookvol10.3 BLAS1 fixed 40304 20130315 tpd src/axiom-website/patches.html 20130315.03.tpd.patch 20130315 tpd buglist INBFF fixed 20465, add 20571 20130315 tpd books/bookvol10.3 INBFF fixed 20465, add 20571 diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html index 571be32..4687cc4 100644 --- a/src/axiom-website/patches.html +++ b/src/axiom-website/patches.html @@ -4057,5 +4057,7 @@ books/bookvol10.3 LIST fix 20063, add, add 20569 books/bookvol10.3 DFLOAT fix 20073, add 20570 20130315.03.tpd.patch books/bookvol10.3 INBFF fixed 20465, add 20571 +20130315.04.tpd.patch +books/bookvol10.3 BLAS1 fixed 40304