Yorick$B8~$1$N4v$D$+$NNc(B

$BF~NO(B

$BK\Mh$N(BYorick$B$OFCDj$N%U%m%s%H%(%s%I$r;}$?$J$$!#Kt!"(Breadline$B$rMQ$$$F(B $B$$$J$$$N$G!"9T$NJT=8$H1>$C$?;v$O9T$($J$$!#$=$N0Y!"%^%K%e%"%k$K$b(B $B$"$kMM$K(Bemacs$BEy$r;H$&J}$,JXMx$G$"$k!#M1!"8e=R$N(BYorick-mb$B$G$O9TJT=8$d(B $BMzNrJT=8$,9T$($kMM$K$J$C$F$$$k!#(B

Yorick$B$O4:$($F8@$&$J$i$P!"JQ?t@k8@$,ITMW$N2qOCE*A`:n$N9T$($k(BC$B8@8lIw(B $B$N=hM}8@8l$G$"$k!#(B";"$B$O(BYorick$B$NJ8Kv$r<($95-9f$G!"(BYorick$BJ8$NKvHx$K(B";" $B$rF~$l$k;v$G!"0l9T$KJ#?t$N(BYorick$B$NJ8$r5-=R$9$k;v$,2DG=$G$"$k!#(B $BKt!"(BYorick$B$NJ8$OJ#?t$N9T$K8Y$,$C$F$bLdBj$OL5$$!#F~NO$,7QB3Cf$G$"$k$H(B Yorick$B$,H=CG$7$?>l9g!"%W%m%s%W%H$,JQ2=$9$k!#0lC67QB39T$KF~$C$?>l9g!"(B ";"$B$G6/@)E*$KH4$1$i$l$k(B($B$"$^$jM@$a$i$l$k

> x=span(0,10,11) 
> x=span(0,10,11);y=sin(x)
> x=span(0,
cont> 10,
cont> 11);y=
cont> sin(x 
cont> );
> typeof(
cont> x
cont> 
cont> ;
SYNTAX: syntax error near ;
> 
    

$B$3$NNc$K<($9MM$K!"F~NO$G$O(B=$B$rMQ$$$k!#$"$kJQ?t$KF~NO$7$?CM$r3NG'$7$?$$(B $B>l9g!"$=$NJQ?tL>$rD>@\F~NO$9$l$PNI$$!#Kt!"$=$NJQ?t$N7?$rCN$j$?$1$l$P(B typeof$B$d(Binfo$B$,;H$($k!#(B

> xi=indgen(0:10:2);
> xi;  
[0,2,4,6,8,10]
> typeof(xi);
"long"
> x=span(0,10,11);
> x;
[0,1,2,3,4,5,6,7,8,9,10]
> typeof(x);
"double"
> xi/10.0
[0,0.2,0.4,0.6,0.8,1]
> xi/10
[0,0,0,0,0,1]
> info,xi
array(long,6)
    

$B>e$NNc$G$O8e$G>\:Y$r=R$Y$k(Bindgen$B$H(Bspan$B$rMQ$$$FG[Ns$r@8@.$7$F$$$k!#(B indgen$B$N>l9g!"@0?t(B(long)$B7?$G!"(Bspan$B$OG\@:EY(B(double)$B$G$"$k!#99$K!"(B $B@0?t7?$N(Bxi$B$r@0?t(B10$B$HG\@:EY$N(B10.0$B$G3d$C$?7k2L$O0[$J$k!#$3$NE@$O(B MATLAB$B$H$O0c$&$N$G!"07$&%G!<%?7?$K$OCm0U$,I,MW$K$J$k!#Kt!"(Binfo$B$r(B $B;H$C$FD4$Y$k;v$b2DG=$G$"$k!#Nc$($P!"(Binfo,xi$B$G(Bxi$B$,(Blong$B7?$NG[Ns(B $B$G$"$k;v$,H=$k!#(B

Yorick$B$NH!?t$N@bL@$O(Bhelp$BL?Na$rMQ$$$k!#0J2<$K(Btypeof$B$N@bL@$r<($9!#(B

> help,typeof;
 /* DOCUMENT typeof(object)
      returns a string describing the type of object.  For the basic
      data types, these are "char", "short", "int", "long", "float",
      "double", "complex", "string", "pointer", "struct_instance",
      "void", "range", "struct_definition", "function", "builtin",
      "stream" (for a binary stream), and "text_stream".
   SEE ALSO: structof, dimsof, sizeof, numberof, nameof
  */
 defined at:  LINE: 399  FILE: /usr/local/yorick-1.5/i0/std.i
    

$B$3$N(Btypeof$B$N@bL@$N7k2L$K<($5$l$kMM$K!"(BYorick$B$K$O(BC$B8@8l$K;w$?%G!<%?7?(B $B$,$"$k;v$,H=$k!#>0!"KvHx$N%U%!%$%k$K3:Ev$9$kH!?t$,Dj5A$5$l$F$$$k$N$G(B $BI,MW$,$"$l$P!"$=$3$r;2>H$9$k$HNI$$!#(B

$B>0!"(Btypeof$B$K0z?t$r0z$-EO$9>l9g$O(Btypeof(x)$B$H$7$?$N$KBP$7!"(Bhelp $B$G$O(Bhelp(typeof)$B$G$OL5$/!"(Bhelp,typeof$B$H$9$k!#$3$NMM$JH!?t$O(B $B4v$D$+B8:_$9$k$,!"B>$O%7%9%F%`H!?t$d%0%i%U$K4XO"$9$k$b$N$,B?$/!"(B $B;;=QH!?tEy$G$3$NMM$J$b$N$OL5$$!#(B

Yorick$B$GFHFC$J$N$b$N$OG[Ns$G$"$k!#$3$l$O(BMatlab$B$H;w$?I=5-$dA`:n$,2DG=(B $B$J0lLL$b$"$k$,!"H/A[K!$O(BC$B8@8lB&$+$i$NJ70O5$$,$"$j!"0l

$B@h$:!"C1=c$K?tCM%G!<%?$rJB$Y$?$@$1$N(B1$B

> x=[1,2,3,4,5.5,6.9];
> x;
[1,2,3,4,5.5,6.9]
> y=span(0,2,10);
> y;
[0,0.222222,0.444444,0.666667,0.888889,1.11111,1.33333,1.55556,1.77778,2]
> y=span(0,2,11);
> y;
[0,0.2,0.4,0.6,0.8,1,1.2,1.4,1.6,1.8,2]
> z=indgen(0:10);
> z;
[0,1,2,3,4,5,6,7,8,9,10]
> z=indgen(12:15);
> z;
[12,13,14,15]
> z=indgen(12:20:3);
> z;
[12,15,18]
> z/10;
[1,1,1]
> 1/10;
0
> 1.0/10;
0.1
    

$B$3$NNc$G<($9MM$K!"@0?t7?F1;N$N1i;;$O@0?t7?$rJV$9$N$G!"(B1/10$B$H(B1.0/10 $B$G$OEz$,0[$J$k!#$=$N0Y!"8+$?L\$OF1$8$b$N$G$b1i;;$r9T$&$H7k2L$,(B $B0[$k2DG=@-$,$"$k!#$=$N0Y!"(BYorick$B$rMQ$$$k>l9g!">o$K%G!<%?7?$N;v$b(B $BG0F,$KCV$/I,MW$,$"$k$@$m$&!#(B

$B

$B@h$:!"(BMatlab$B$G$O(B[1,2,3;4,5,6]$B$NMM$JF~NO$r9T$&$,!"$3$l$r(BYorick$B$G(B $B5-=R$9$k$J$i$P!"(B[[1,2,3],[3,4,5]]$B$H$J$k!#$I$A$i$+$H8@$($P!"(B $BK\BN$NF~NO$O(BMaple$BIw$G$"$k!#>0!"(B1$B

> y=[[1,2,3],[4,5,6]];
> y;
[[1,2,3],[4,5,6]]
> dimsof(y);
[2,3,2]
> y(2,2);
5
> transpose(y);
[[1,4],[2,5],[3,6]]
    

$B@h$:!":G=i$KFs

$Bl9g!"Nc$($P!"(B(2,2)$B@.J,$rCV$O(Btranspose$BL?Na$GF@$i$l$k!#(B $B$3$N(Btranspose$B$O@.J,$NCV49$b2DG=$G$"$k!#>\:Y$O%^%K%e%"%k$r;2>H$5$l$?$$!#(B

Yorick$B$G$O(BMatlab$BDx5$3Z$KG[Ns$,07$($J$$(B($B$H$O8@$(!"(BC$B$HHf$Y$l$P3JCJ$K3Z(B)$B!#(B $B$3$l$O07$&G[Ns$,J#;($K$J$l$P$J$kDx82Cx$K$J$k!#(B

> x=span(0,2*pi,11);
> zz=[x,2*x,sin(x)];
> zz;
[[0,0.628319,1.25664,1.88496,2.51327,3.14159,3.76991,4.39823,5.02655,5.65487,
6.28319],[0,1.25664,2.51327,3.76991,5.02655,6.28319,7.53982,8.79646,10.0531,
11.3097,12.5664],[0,0.587785,0.951057,0.951057,0.587785,1.22461e-16,-0.587785,
-0.951057,-0.951057,-0.587785,-2.44921e-16]]
> dimsof(zz);
[2,11,3]
> zz([1,4,7,10],1);
[0,1.88496,3.76991,5.65487]
> zz(1:11:3,1);
[0,1.88496,3.76991,5.65487]
> zz(:11:3,1);
[0,1.88496,3.76991,5.65487]
> zz(1::3,1);
[0,1.88496,3.76991,5.65487]
> zz(indgen(1:11:3),1);
[0,1.88496,3.76991,5.65487]
> zz(:11:3)
[0,1.88496,3.76991,5.65487]
> zz(1,*);
[0,0,0]
> zz(2,*);
[0.628319,1.25664,0.587785]

> dimsof(a1);
[1,3]
> dimsof(b1);
[1,11]
> zz([1,2],[1,2]);
[[0,0.628319],[0,1.25664]]
> y=array(1,4,4);
> y;
[[1,1,1,1],[1,1,1,1],[1,1,1,1],[1,1,1,1]]
    

$B$3$NNc$G$O!"(Bspan$BL?Na$G(B0$B$+$i(B2*pi$BKx$N(B11$B@.J,$N(B1$Bl9g$O!"(Bzz(2,2)$B$NMM$K;XDj$9$l$PNI$+$C$?$,!"J#?tH4$-=P$9>l9g!"(B $B4pK\E*$K(BMatlab$B$G9T$&$N$H;w$?J}K!$G9T$&!#(B

$B:G=i$K!"(Bzz([1,4,7,10],1)$B$HD>@\;XDj$7$F!"(Bzz(1,1),zz(4,1),zz(7,1), zz(10,1)$B$r@.J,$H$9$kG[Ns$rF@$F$$$k!#99$K!"(BMatlab$B$HF1MM$NI=5-(B $B$N(Bzz(1:11:3,1)$B$GF1$8J*$,F@$i$l$k!#$3$l$i$N@0?t?tNs$r@8@.$9$k(B indgen$B$b;H$($k!#(Bindgen(1:11:3)$B$O(B[1,4,7,10]$B$rJV$9$N$G!"(B zz(indgen(1:11:3),1)$B$O(Bzz(1:11:3,1)$B$HF1$8$b$N$rJV$9!#(B $B$3$N(Bindgen(a:b:c)$B$K$h$C$F!"(Ba$B$+$i3+;O$7!"(Bb$B$r1[$($J$$4V3V(Bc$B$N@0?tG[Ns(B $B$,F@$i$l$k!#>0!"G[Ns$NDj5A$G(BMatlab$B$NMM$K!"(Bx=[a:b:c];$B$,;H$($J$$$N$G(B $BCm0U$,I,MW$G$"$k!#(BYorick$B$G$O99$KJQ$C$?I=5-$b2DG=$G$"$k!#(B1:11:3$B$HF1$8(B $B0UL#$H$J$k(B:11:3$B$b$"$k!#99$K!"=*E@$r>JN,$7$F(B1::3$B$H$9$k;v$b(B::3$B$NMM$K(B $B;OE@$H=*E@$r>JN,$9$k;v$b2DG=$G$"$k!#$3$NMM$K;OE@$d=*E@$r>JN,$9$k;v$b(B Yorick$B$G$O2DG=$G$"$k!#Kt!"G$0U$NG[Ns$r(B1$BH(B $B$b9T$($k!#$3$3$G$N(Bzz(:11:3)$B$O(Bzz(1:11:3,1)$B$HF1$80UL#$K$J$k!#(B

$BG[Ns$NCM;2>H$GMQ$$$i$l$kFCH$9$k!#F1MM$K!"(Bzz(*,1)$B$GBhFs$NE:;z$,(B1$B$N$b$NA4$F$r;2>H(B $B$9$k!#(B

Yorick$B$GH=$jFq$$$N$O(B"-"$B$G$"$k!#$3$l$OM?$($i$l$?G[Ns$r?eA}$7$7$?$j!"(B $B3d0z$$$?$j$9$kMM$JF/$-$r$9$k!#(B

> x=indgen(1:10:1);
> x       
[1,2,3,4,5,6,7,8,9,10]
> y=indgen(10:1:-1);
> y
[10,9,8,7,6,5,4,3,2,1]
> x*y(-,)
[[10,20,30,40,50,60,70,80,90,100],[9,18,27,36,45,54,63,72,81,90],[8,16,24,32,
40,48,56,64,72,80],[7,14,21,28,35,42,49,56,63,70],[6,12,18,24,30,36,42,48,54,
60],[5,10,15,20,25,30,35,40,45,50],[4,8,12,16,20,24,28,32,36,40],[3,6,9,12,15,
18,21,24,27,30],[2,4,6,8,10,12,14,16,18,20],[1,2,3,4,5,6,7,8,9,10]]
> x*y(,-)
[[10,18,24,28,30,30,28,24,18,10]]
> y(,-)
[[10,9,8,7,6,5,4,3,2,1]]
> y(-,)
[[10],[9],[8],[7],[6],[5],[4],[3],[2],[1]]
> info,y
 array(long,10)
> info,x
 array(long,10)
> info,y(-,)
 array(long,1,10)
> info,y(,-)
 array(long,10,1)
> 
    

$B$3$NNc$G<($9MM$K!"(B1$Bl9g$O(BX(*,1)$B$H$J$k!#(B

$B$3$NIT;W5D$J5-9f$OF1$8%Q%?!<%s$r7+JV$9!"Nc$($P!"%a%C%7%e$r9=C[$9$k(B $B>l9g$K$OHs>o$KM-8z$G$"$k!#$3$N>l9g!"(B-:1:5$B$NMM$K(B:$B$HAH9g$;$FMQ$$$k!#(B

> x=span(0,5,6)(,-:1:5)
> x
[[0,1,2,3,4,5],[0,1,2,3,4,5],[0,1,2,3,4,5],[0,1,2,3,4,5],[0,1,2,3,4,5]]
> y=span(0,5,6)(-:1:5,)
> y
[[0,0,0,0,0],[1,1,1,1,1],[2,2,2,2,2],[3,3,3,3,3],[4,4,4,4,4],[5,5,5,5,5]]
> x1=span(0,5,6)(,-:128:140:3)
> x1
[[0,1,2,3,4,5],[0,1,2,3,4,5],[0,1,2,3,4,5],[0,1,2,3,4,5],[0,1,2,3,4,5]]
> y1=span(0,5,6)(-:1:9:2,)
> y1
[[0,0,0,0,0],[1,1,1,1,1],[2,2,2,2,2],[3,3,3,3,3],[4,4,4,4,4],[5,5,5,5,5]]
>
    

$B$3$NMM$K!"(B-:a:b:c$B$G(Ba$B$+$i(Bb$B$^$G(Bc$BDx$N4V3V$GHt$P$98D?t(B+1$B8D$N%3%T!<$,(B $B=PMh$k!#(B

Yorick$B$G$O(BMatlab$BIw$N%Q%?!<%s%^%C%A%s%0$b9T$($k!#(B

> x=span(0,4*pi,11);
> x
[0,1.25664,2.51327,3.76991,5.02655,6.28319,7.53982,8.79646,10.0531,11.3097,
12.5664]
> (x>=3)
[0,0,0,1,1,1,1,1,1,1,1]
> x>3
[0,0,0,1,1,1,1,1,1,1,1]
> (x>3)*x 
[0,0,0,3.76991,5.02655,6.28319,7.53982,8.79646,10.0531,11.3097,12.5664]
> where(x>3)
[4,5,6,7,8,9,10,11]
>
    

$B$3$3$G!"(BMatlab$B$N(Bfind$B$KAjEv$9$kL?Na$O(Bwhere$B$G$"$k!#(B $B$3$NNc$G<($9MM$K(B3$B0J>e$N@.J,$O(B1$B!"$=$l0J30$O(B0$B$H$J$k!#(B $B:G8e$K!"(Bwhere$B$rMQ$$$F>r7o$KE,9g$9$kG[Ns$N0LCV$rH4$-=P$7$?%j%9%H$r(B $B5a$a$F$$$k!#(B

$B$3$NMM$K!"(BYorick$B$OG[Ns$NA`:n$K4X$7$F$O!"(BMatlab$B$NMM$KC1=c$J$b$N$G$O(B $BL5$/!"?oJ,$H:.$_F~$C$?A`:n$,2DG=$J0Y!"H=$jFq$$B&LL$b$"$k!#(B $BFC$K!"G[Ns$N1i;;$K4X$7$F$O99$K:.$_F~$C$?MxMQJ}K!$,$"$k!#(B

> A=[[0,1,0],[-1,0,0],[0,0,1]];
> y=[1,2,3];
> A
[[0,1,0],[-1,0,0],[0,0,1]]
> y;
[1,2,3]
> A(,+)*y(+,);
[-2,1,3]
> y(+,)*A(,+);
[-2,1,3]
> (transpose(A))(,+)*y(+,)
[2,-1,3]
> 
    

$B$3$NMM$K!"9TNs$N@Q$O(BMatlab$B$H$O?oJ,JQ$C$?J}K!$G9T$&!#(B $B0lHLE*$K!"(BA$B$,(BL$B!_(BM$B!"(BB$B$,(BM$B!_(BN$B$N>l9g!"(B

$B$H$J$k!#$3$NJU!"(BMatlab$B$ND>46E*$JA`:n$H$OBgI}$K0[$J$k!#(B

$B$*3(=q$-(B

Yorick$B$O(BGNUPlot$B$rMQ$$$k(BOctave$B$HHf$Y$k$H!"%0%i%U%#%C%/%95!G=$O(B $B7Z$$3d$K5!G=$OHs>o$K9b$$!#$3$3$G$OC1=c$KFsl9g!"3P$($F$*$/I,MW$N$"$kL?Na$O(Bfma$B$H(B plg$B$G$"$k!#(Bfma$B$O%0%i%U%#%C%/%9$N99?7$r9T$&!#(B

> x=span(0,100,1001);
> y=sin(x)*exp(-0.1*x);
> fma
> plg,y,x
    

$B=i$a$F(Bfma$B$rJN,$7$F(Bplg,y$B$@$1$G$b%0%i%U$NI=<($O9T$o$l$k!#C"$7!"(Bx$B:BI8$OG[Ns$N(B $BE:;z$H$J$k!#(B

$B

> x=span(0,10,101);
> y=array(-9.8,101);
> yi=integ(y,x,x);
> fma
> yi2=integ(yi,x,x);
> plg,yi2,x
    

$B$3$NNc$G$O@QJ,(Binteg$B$rMQ$$$F$$$k!#$3$N?tCM@QJ,$G$O@QJ,Dj?t$r(B0 $B$H$7$F$$$k!#(B

$B\:Y$O(Bhelp,type$B$G=P$FMh$k@bL@$r(B $B;2>H$5$l$?$$!#Kt!"?'$N;XDj$O(Bcolor$B%-!<%o!<%I$G9T$&!#$3$3$K$O(B RGB$B$rI=8=$9$k(B0$B$+$i(B255$BKx$N?tCM%j%9%H$rBeF~$9$k!#0J2<$KNc$r<($7$F$*$/!#(B

>fma
>plg,type=4,color=[255,0,0],yi2,x
>plg,type=0,color=[0,255,0],yi,x
    

yorick-mb

Yorick-mb$B$O(BYorick Maintenon Branch$B$NN,$G!"(BDavid Munro$B;a$NK\Mh$N(B Yorick$B$r(BCentre de Morphologie Math$B+1(Bmatique$B$N(BChristophe Bernard$B;a(B $B$,2~NI!&6/2=$7$?$b$N$G$"$k!#(B

$B$H1>$C$?2~NIE@$,$"$k!#Kt!"(BJPEG$B%U%!%$%k$,07$($k3HD%5!G=$b$"$k!#(B

JPEG$B%U%!%$%k$NFI9~$G$O!"2hA|$,%+%i!<$N(BA$B!_(BB$B%T%/%;%k$G$"$l$P!"(B $BFI$_9~$s$@2hA|$O!"(B3$B!_(BA$B!_(BB$B$N?tCMG[Ns$H$J$k!#%0%l%$%9%1!<%k$d(B $BGr9u2hA|$N>l9g$O(BA$B!_(BB$B$N?tCMG[Ns$K$J$k!#$3$3$G!"G[Ns$NCM$O(B0(0x00) $B$+$i(B255(0xff)$B$NCM$K$J$k!#99$K!"=q9~$_$b9T$($k!#0J2<$K2<$i$J$$(B $BNc$r<($9!#(B

ponpoko@kahn:~> yorick
 Copyright (c) 1996-2000.  The Regents of the University of California.
 Copyright (c) 2000-2002.  Centre de Morphologie Mathatique.
 All rights reserved.  Yorick 1.5 ready.  For help type 'help'
> #include "jpg.so";
> a=array(uchar,3,3,256,256);
> files=["test1.jpeg","test2.jpeg","test3.jpeg"];
> for(i=1;i<=3;i++)
cont> a(i,,,)=jpg_read(files(i),noflip=100);
> fma;
> pli,a(1,,,)+a(2,,,)+a(3,,,);
> jpg_write,a(1,,,)+a(2,,,)+a(3,,,),"neko.jpg"
> mike=a(1,,,)+a(2,,,)+a(3,,,);
> eps,"mike"
    

$B:G=i$N(B#include "jpg.so"$B$G%i%$%V%i%j$NFI9~$r9T$&!#(B JPEG$B%U%!%$%k$NFI9~$O(Bjpg_read$B$G9T$&!#=q$-=P$7$O(Bjpg_write$B$G9T$&!#(B $BFI9~$s$@%G!<%?$NI=<($O(Bpli$B$G9T$J$&!#$3$NNc$G$O(Btest1.jpeg$B$+$i(Btest3.jpeg $BKx$N2hA|$rFI9~$_!":G8e$K$=$l$i$r9g@.!"$D$^$j!"C1=c$JOB$r

test1.jpeg

test2.jpeg

test3.jpeg

pli,a(1,,,)+a(2,,,)+a(3,,,)$B$N7k2L(B

jpg_write$B$N7k2L(B

eps$B$N7k2L(B(gv$B$G(Bmike.epsi$B$rI=<((B)

$B%U%!%$%k$N07$$(B

Yorick$B$N%U%!%$%k$N=hM}$O$I$&$bB>$N(BMATLAB$B%/%m!<%s$HHf3S$7$F$bNI$$J}$G$O$J$$!#(B C$BIw$N=hM}8@8l$r;}$C$F$$$k$,!"%U%!%$%k=hM}$K4X$7$F$OIO


Ponpoko
Last modified: Sat Dec 4 22:55:20 JST 2004