version 1.11, 2009/03/24 08:00:50 |
version 1.14, 2011/12/09 05:13:52 |
|
|
@comment $OpenXM: OpenXM/src/asir-doc/parts/builtin/array.texi,v 1.10 2005/02/10 04:59:21 noro Exp $ |
@comment $OpenXM: OpenXM/src/asir-doc/parts/builtin/array.texi,v 1.13 2009/03/24 17:02:06 ohara Exp $ |
\BJP |
\BJP |
@node $BG[Ns(B,,, $BAH$_9~$_H!?t(B |
@node $BG[Ns(B,,, $BAH$_9~$_H!?t(B |
@section $BG[Ns(B |
@section $BG[Ns(B |
|
|
* vtol:: |
* vtol:: |
* newbytearray:: |
* newbytearray:: |
* newmat matrix:: |
* newmat matrix:: |
|
* mat matr matc:: |
* size:: |
* size:: |
* det nd_det invmat:: |
* det nd_det invmat:: |
|
* rowx rowm rowa colx colm cola:: |
|
|
* qsort:: |
* qsort:: |
@end menu |
@end menu |
Line 167 separated simply by a `blank space', while those of a |
|
Line 169 separated simply by a `blank space', while those of a |
|
@table @t |
@table @t |
\JP @item $B;2>H(B |
\JP @item $B;2>H(B |
\EG @item References |
\EG @item References |
@fref{newmat}, @fref{size}, @fref{ltov}, @fref{vtol}. |
@fref{newmat matrix}, @fref{size}, @fref{ltov}, @fref{vtol}. |
@end table |
@end table |
|
|
\JP @node ltov,,, $BG[Ns(B |
\JP @node ltov,,, $BG[Ns(B |
Line 213 See also @code{newvect()}. |
|
Line 215 See also @code{newvect()}. |
|
@table @t |
@table @t |
\JP @item $B;2>H(B |
\JP @item $B;2>H(B |
\EG @item References |
\EG @item References |
@fref{newvect}, @fref{vtol}. |
@fref{newvect vector vect}, @fref{vtol}. |
@end table |
@end table |
|
|
\JP @node vtol,,, $BG[Ns(B |
\JP @node vtol,,, $BG[Ns(B |
Line 263 A conversion from a list to a vector is done by @code{ |
|
Line 265 A conversion from a list to a vector is done by @code{ |
|
@table @t |
@table @t |
\JP @item $B;2>H(B |
\JP @item $B;2>H(B |
\EG @item References |
\EG @item References |
@fref{newvect}, @fref{ltov}. |
@fref{newvect vector vect}, @fref{ltov}. |
@end table |
@end table |
|
|
\JP @node newbytearray,,, $BG[Ns(B |
\JP @node newbytearray,,, $BG[Ns(B |
Line 319 similar to that of @code{newvect}. |
|
Line 321 similar to that of @code{newvect}. |
|
@table @t |
@table @t |
\JP @item $B;2>H(B |
\JP @item $B;2>H(B |
\EG @item References |
\EG @item References |
@fref{newvect}. |
@fref{newvect vector vect}. |
@end table |
@end table |
|
|
\JP @node newmat matrix,,, $BG[Ns(B |
\JP @node newmat matrix,,, $BG[Ns(B |
Line 412 return to toplevel |
|
Line 414 return to toplevel |
|
@table @t |
@table @t |
\JP @item $B;2>H(B |
\JP @item $B;2>H(B |
\EG @item References |
\EG @item References |
@fref{newvect}, @fref{size}, @fref{det nd_det invmat}. |
@fref{newvect vector vect}, @fref{size}, @fref{det nd_det invmat}. |
@end table |
@end table |
|
|
|
\JP @node mat matr matc,,, $BG[Ns(B |
|
\EG @node mat matr matc,,, Arrays |
|
@subsection @code{mat}, @code{matr}, @code{matc} |
|
@findex mat |
|
@findex matr |
|
@findex matc |
|
|
|
@table @t |
|
@item mat(@var{vector}[,...]) |
|
@item matr(@var{vector}[,...]) |
|
\JP :: $B9T%Y%/%H%k$NJB$S$+$i9TNs$r@8@.$9$k(B. |
|
\EG :: Creates a new matrix by list of row vectors. |
|
@item matc(@var{vector}[,...]) |
|
\JP :: $BNs%Y%/%H%k$NJB$S$+$i9TNs$r@8@.$9$k(B. |
|
\EG :: Creates a new matrix by list of column vectors. |
|
@end table |
|
|
|
@table @var |
|
@item return |
|
\JP $B9TNs(B |
|
\EG matrix |
|
@item @var{vector} |
|
\JP $BG[Ns$^$?$O%j%9%H(B |
|
\EG array or list |
|
@end table |
|
|
|
@itemize @bullet |
|
\BJP |
|
@item |
|
@code{mat} $B$O(B @code{matr} $B$NJLL>$G$"$k(B. |
|
@item |
|
$B0z?t$N3F%Y%/%H%k$OF1$8D9$5$r$b$D(B. |
|
$B3FMWAG$O(B, $B@hF,$+$i=g$K;H$o$l(B, $BB-$j$J$$J,$O(B 0 $B$,Kd$a$i$l$k(B. |
|
\E |
|
\BEG |
|
@item |
|
@code{mat} is an alias of @code{matr}. |
|
@item |
|
Each vector has same length. |
|
Elements are used from the first through the last. |
|
If the list is short, 0's are filled in the remaining matrix elements. |
|
\E |
|
@end itemize |
|
|
|
@example |
|
[0] matr([1,2,3],[4,5,6],[7,8]); |
|
[ 1 2 3 ] |
|
[ 4 5 6 ] |
|
[ 7 8 0 ] |
|
[1] matc([1,2,3],[4,5,6],[7,8]); |
|
[ 1 4 7 ] |
|
[ 2 5 8 ] |
|
[ 3 6 0 ] |
|
@end example |
|
|
|
@table @t |
|
\JP @item $B;2>H(B |
|
\EG @item References |
|
@fref{newmat matrix} |
|
@end table |
|
|
\JP @node size,,, $BG[Ns(B |
\JP @node size,,, $BG[Ns(B |
\EG @node size,,, Arrays |
\EG @node size,,, Arrays |
@subsection @code{size} |
@subsection @code{size} |
Line 518 in a rational expression. |
|
Line 581 in a rational expression. |
|
@item |
@item |
@code{det} $B$*$h$S(B @code{nd_det} $B$O9TNs(B @var{mat} $B$N9TNs<0$r5a$a$k(B. |
@code{det} $B$*$h$S(B @code{nd_det} $B$O9TNs(B @var{mat} $B$N9TNs<0$r5a$a$k(B. |
@code{invmat} $B$O9TNs(B @var{mat} $B$N5U9TNs$r5a$a$k(B. $B5U9TNs$O(B @code{[$BJ,Jl(B, $BJ,;R(B]} |
@code{invmat} $B$O9TNs(B @var{mat} $B$N5U9TNs$r5a$a$k(B. $B5U9TNs$O(B @code{[$BJ,Jl(B, $BJ,;R(B]} |
$B$N7A$GJV$5$l(B, @code{$BJ,Jl(B}$B$,9TNs(B, @code{$BJ,Jl(B/$BJ,;R(B} $B$,5U9TNs$H$J$k(B. |
$B$N7A$GJV$5$l(B, @code{$BJ,Jl(B}$B$,9TNs(B, @code{$BJ,;R(B/$BJ,Jl(B} $B$,5U9TNs$H$J$k(B. |
@item |
@item |
$B0z?t(B @var{mod} $B$,$"$k;~(B, GF(@var{mod}) $B>e$G$N9TNs<0$r5a$a$k(B. |
$B0z?t(B @var{mod} $B$,$"$k;~(B, GF(@var{mod}) $B>e$G$N9TNs<0$r5a$a$k(B. |
@item |
@item |
Line 587 and it computes the determinant faster than @code{det} |
|
Line 650 and it computes the determinant faster than @code{det} |
|
@table @t |
@table @t |
\JP @item $B;2>H(B |
\JP @item $B;2>H(B |
\EG @item References |
\EG @item References |
@fref{newmat}. |
@fref{newmat matrix}. |
@end table |
@end table |
|
|
\JP @node qsort,,, $BG[Ns(B |
\JP @node qsort,,, $BG[Ns(B |
|
|
\JP @item $B;2>H(B |
\JP @item $B;2>H(B |
\EG @item References |
\EG @item References |
@fref{ord}, @fref{vars}. |
@fref{ord}, @fref{vars}. |
|
@end table |
|
|
|
\JP @node rowx rowm rowa colx colm cola,,, $BG[Ns(B |
|
\EG @node rowx rowm rowa colx colm cola,,, Arrays |
|
@subsection @code{rowx}, @code{rowm}, @code{rowa}, @code{colx}, @code{colm}, @code{cola} |
|
@findex rowx |
|
@findex rowm |
|
@findex rowa |
|
@findex colx |
|
@findex colm |
|
@findex cola |
|
|
|
@table @t |
|
@item rowx(@var{matrix},@var{i},@var{j}) |
|
\JP :: $BBh(B @var{i} $B9T$HBh(B @var{j} $B9T$r8r49$9$k(B. |
|
\EG :: Exchanges the @var{i}-th and @var{j}-th rows. |
|
@item rowm(@var{matrix},@var{i},@var{c}) |
|
\JP :: $BBh(B @var{i} $B9T$r(B @var{c} $BG\$9$k(B. |
|
\EG :: Multiplies the @var{i}-th row by @var{c}. |
|
@item rowa(@var{matrix},@var{i},@var{c}) |
|
\JP :: $BBh(B @var{i} $B9T$KBh(B @var{i} $B9T$N(B @var{c} $BG\$r2C$($k(B. |
|
\EG :: Appends @var{c} times the @var{j}-th row to the @var{j}-th row. |
|
@item colx(@var{matrix},@var{i},@var{j}) |
|
\JP :: $BBh(B @var{i} $B9T$HBh(B @var{j} $B9T$r8r49$9$k(B. |
|
\EG :: Exchanges the @var{i}-th and @var{j}-th columns. |
|
@item colm(@var{matrix},@var{i},@var{c}) |
|
\JP :: $BBh(B @var{i} $B9T$r(B @var{c} $BG\$9$k(B. |
|
\EG :: Multiplies the @var{i}-th column by @var{c}. |
|
@item cola(@var{matrix},@var{i},@var{c}) |
|
\JP :: $BBh(B @var{i} $B9T$KBh(B @var{i} $B9T$N(B @var{c} $BG\$r2C$($k(B. |
|
\EG :: Appends @var{c} times the @var{j}-th column to the @var{j}-th column. |
|
@end table |
|
|
|
@table @var |
|
@item return |
|
\JP $B9TNs(B |
|
\EG matrix |
|
@item @var{i}, @var{j} |
|
\JP $B@0?t(B |
|
\EG integers |
|
@item @var{c} |
|
\JP $B78?t(B |
|
\EG coefficient |
|
@end table |
|
|
|
@itemize @bullet |
|
\BJP |
|
@item |
|
$B9TNs$N4pK\JQ7A$r9T$&$?$a$N4X?t$G$"$k(B. |
|
@item |
|
$B9TNs$,GK2u$5$l$k$3$H$KCm0U$9$k(B. |
|
\E |
|
\BEG |
|
@item |
|
These operations are destructive for the matrix. |
|
\E |
|
@end itemize |
|
|
|
@example |
|
[0] A=newmat(3,3,[[1,2,3],[4,5,6],[7,8,9]]); |
|
[ 1 2 3 ] |
|
[ 4 5 6 ] |
|
[ 7 8 9 ] |
|
[1] rowx(A,1,2)$ |
|
[2] A; |
|
[ 1 2 3 ] |
|
[ 7 8 9 ] |
|
[ 4 5 6 ] |
|
[3] rowm(A,2,x); |
|
[ 1 2 3 ] |
|
[ 7 8 9 ] |
|
[ 4*x 5*x 6*x ] |
|
[4] rowa(A,0,1,z); |
|
[ 7*z+1 8*z+2 9*z+3 ] |
|
[ 7 8 9 ] |
|
[ 4*x 5*x 6*x ] |
|
@end example |
|
|
|
@table @t |
|
\JP @item $B;2>H(B |
|
\EG @item References |
|
@fref{newmat matrix} |
@end table |
@end table |