User:Tom Allen/TensorExperimentsB04

From J Wiki
Jump to: navigation, search


NB. ... script experimentalB.ijs ...

OyBMPt0=:(],<@(_"_))@}:@:(<@(gXq20*>@])"_ 0)
OyBMPt1=:(],<@(_"_))@}:@:(<@(gXq21*>@])"_ 0)
OyBMPt2=:(],<@(_"_))@}:@:(<@(gXq22*>@])"_ 0)

OyB0XX=:[OyBMPt0[cfMP4 qby0XX,:[cfMP4 qbAXX,:qbCXX
OyB1XX=:[OyBMPt1[cfMP4 qby1XX,:[cfMP4 qbAXX,:qbCXX
OyB2XX=:[OyBMPt2[cfMP4 qby2XX,:[cfMP4 qbAXX,:qbCXX

OyB3XXt0=:[OyBMPt0([cfMP4 qby0XX,:([cfMP4 qbAXX,:qbDc0XX)+&.>[cfMP4 qbAc0XX,:qbEXX)+&.>[cfMP4 qbAXX,:qbEXX
OyB3XXt1=:[OyBMPt1([cfMP4 qby1XX,:([cfMP4 qbAXX,:qbDc1XX)+&.>[cfMP4 qbAc1XX,:qbEXX)+&.>[cfMP4 qbAXX,:qbEXX
OyB3XXt2=:[OyBMPt2([cfMP4 qby2XX,:([cfMP4 qbAXX,:qbDc2XX)+&.>[cfMP4 qbAc2XX,:qbEXX)+&.>[cfMP4 qbAXX,:qbEXX
OyB3XXt3=:(],<@(_"_))@}:@qbFXX
OyB3XX  =:(],<@(_"_))@}:@:(-&.>)@(OyB3XXt0+&.>OyB3XXt1+&.>OyB3XXt2+&.>OyB3XXt3)

OyBD4        =:>@((<4 0){])
OyBD4dy      =:>@((<4 1){])
OyBD4dydy    =:>@((<4 2){])
OyBD4dydydy  =:>@((<4 3){])
OyBD4dydydydy=:>@((<4 4){])

OyBXXS=:<@:>"1@(0|:])@(OyB0XX,OyB1XX,OyB2XX,:OyB3XX)
OyBXX =:<@:>"1@(0|:])@:(OyBXXS"_ 1)

hkxG=:[(],[OyBXX ypts)hkxD
hkyG=:[(],[OyBXX ypts)hkyD


load 'plot'

gXcw   =:   1      0     _      _     _  "_
gXpAll =:   0      0     0      0     0  "_
gXq2All=:   0.03   0.03  0.03  _0.5   _  "_
gXq3All=:  _0.1   _0.7   4     _1     0.2"_
gXq4All=:   0.03   0.03  0.03   1     _  "_
gXq5All=:   1      1     3      1    _3  "_
gXq6All=:   0.03   0.03  0.03   0     _  "_
gXq7All=:   1      1.1   3      1.2  _2  "_

NB. ... attenuated wave ...

yCpts=:_ 5 83 300,_ 0 0 0,_ 0 0 0,:_ 0.0 0.0 0"_
pd (gXB(cy0"_ 1;OyBcK0"_ 1)]) pTtotal yCpts''

yCpts=:_ 5 83 300,_ 0 0 0,_ 0 0 0,:_ 0.5 0.5 0"_
pd (gXB(cy0"_ 1;OyBcK0"_ 1)]) pTtotal yCpts''

yCpts=:_ 5 83 300,_ 0 0 0,_ 0 0 0,:_ 1.5 1.5 0"_
pd (gXB(cy0"_ 1;OyBcK0"_ 1)]) pTtotal yCpts''

yCpts=:_ 5 83 300,_ 0 0 0,_ 0 0 0,:_ 2.0 2.0 0"_
pd (gXB(cy0"_ 1;OyBcK0"_ 1)]) pTtotal yCpts''

gXcw   =:   1      0     _      _     _  "_
gXpAll =:   0      0     0      0     0  "_
gXq2All=:   0.03   0.03  0.03   0     _  "_
gXq3All=:  _0.1   _0.7   4     _1     0.2"_
gXq4All=:   0.03   0.03  0.03   0     _  "_
gXq5All=:   1      1     3      1    _3  "_
gXq6All=:   0.03   0.03  0.03   0.5   _  "_
gXq7All=:   1      1.1   3      1.2  _2  "_

NB. ... time-independent component of OyB3 ...

yCpts=:_ 5 83 300,_ 0 0 0,_ 0 0 0,:_ 0 0 0"_
pd (gXB(cy0"_ 1;OyBcK3"_ 1)])    pTtotal yCpts''

pd 'pdf'
pd 'show'


Egraphic0400.jpg
... some numbers for calculating derivatives ...


NB. ... execute (ijx) ...

   gXcw   =:   1      0     _      _     _  "_
   gXpAll =:   0      0     0      0     0  "_
   gXq2All=:   0.03   0.03  0.03  _0.5   _  "_
   gXq3All=:  _0.1   _0.7   4     _1     0.2"_
   gXq4All=:   0.03   0.03  0.03   1     _  "_
   gXq5All=:   1      1     3      1    _3  "_
   gXq6All=:   0.03   0.03  0.03   0.5   _  "_
   gXq7All=:   1      1.1   3      1.2  _2  "_

   yCpts=:_ 5 48 20,_ 5 48 20,_ 5 48 20,:_ 0 2 20"_

NB. ... check ...

   (gXB(OyBcK"_ 1-:"1[OyBD4 hkyG)])              ((0;50"_)pTRandom yCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   (gXB(OyBcKdy"_ 1-:!.(2^_42)"2[OyBD4dy hkyG)]) ((0;50"_)pTRandom yCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

NB. ... derivatives ...

   A=:(gXB([OyBD4dy hkyG)])                                      ((0;50"_)pTRandom yCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OyBD4 hkyG),:@])D.1])"_ 1)])        ((0;50"_)pTRandom yCpts)''

   A (((2^_44);2^_11)qteq[;])"2 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   A=:(gXB([OyBD4dydy hkyG)])                                    ((0;50"_)pTRandom yCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OyBD4dy hkyG),:@])D.1])"_ 1)])      ((0;50"_)pTRandom yCpts)''

   A (((2^_44);2^_12)qteq[;])"3 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   A=:(gXB([OyBD4dydydy hkyG)])                                  ((0;50"_)pTRandom yCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OyBD4dydy hkyG),:@])D.1])"_ 1)])    ((0;50"_)pTRandom yCpts)''

   A (((2^_44);2^_10)qteq[;])"4 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   A=:(gXB([OyBD4dydydydy hkyG)])                                ((0;50"_)pTRandom yCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OyBD4dydydy hkyG),:@])D.1])"_ 1)])  ((0;50"_)pTRandom yCpts)''

   A (((2^_44);2^_10)qteq[;])"5 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

NB. ... divergence is 0 ...

   (0=]) ((2^_44)qtsz]) (gXB(([+/@((<0 1)|:])"2@OyBD4dy hkyG))]) ((0;50"_)pTRandom yCpts)''
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1


NB. ... script experimentalB.ijs ...

OyBdxt0=:ydx((0|:[)smx])"2 2 OyBD4dy
OyBdx  =:(0|:])"2@OyBdxt0


OyBdxdxt00S0=:ydx  ((0|:[)smx])"2 3 OyBD4dydy
OyBdxdxt00S1=:ydx  ((0|:[)smx])"2 3 OyBdxdxt00S0
OyBdxdxt00  =:(0 1|:])"3@OyBdxdxt00S1

OyBdxdxt01S0=:ydxdx((0|:[)smx])"3 2 OyBD4dy
OyBdxdxt01  =:(0 1|:])"3@OyBdxdxt01S0

OyBdxdx=:OyBdxdxt00+OyBdxdxt01


OyBdxdxdxt000S0=:ydx    ((0|:[)smx])"2 4 OyBD4dydydy
OyBdxdxdxt000S1=:ydx    ((0|:[)smx])"2 4 OyBdxdxdxt000S0
OyBdxdxdxt000S2=:ydx    ((0|:[)smx])"2 4 OyBdxdxdxt000S1
OyBdxdxdxt000  =:(0 1 2|:])"4@OyBdxdxdxt000S2

OyBdxdxdxt001S0=:ydxdx  ((0|:[)smx])"3 3 OyBD4dydy
OyBdxdxdxt001S1=:ydx    ((0|:[)smx])"2 4 OyBdxdxdxt001S0
OyBdxdxdxt001  =:(0 1 2|:])"4@OyBdxdxdxt001S1

OyBdxdxdxt002S0=:ydx    ((0|:[)smx])"2 3 OyBD4dydy
OyBdxdxdxt002S1=:ydxdx  ((0|:[)smx])"3 3 OyBdxdxdxt002S0
OyBdxdxdxt002  =:(0 2 1|:])"4@OyBdxdxdxt002S1

OyBdxdxdxt010S0=:ydx    ((0|:[)smx])"2 3 OyBD4dydy
OyBdxdxdxt010S1=:ydxdx  ((0|:[)smx])"3 3 OyBdxdxdxt010S0
OyBdxdxdxt010  =:(0 1 2|:])"4@OyBdxdxdxt010S1

OyBdxdxdxt011S0=:ydxdxdx((0|:[)smx])"4 2 OyBD4dy
OyBdxdxdxt011  =:(0 1 2|:])"4@OyBdxdxdxt011S0

OyBdxdxdx=:OyBdxdxdxt000+OyBdxdxdxt001+OyBdxdxdxt002+OyBdxdxdxt010+OyBdxdxdxt011


OyBdxdxdxdxt0000S0=:ydx      ((0|:[)smx])"2 5 OyBD4dydydydy
OyBdxdxdxdxt0000S1=:ydx      ((0|:[)smx])"2 5 OyBdxdxdxdxt0000S0
OyBdxdxdxdxt0000S2=:ydx      ((0|:[)smx])"2 5 OyBdxdxdxdxt0000S1
OyBdxdxdxdxt0000S3=:ydx      ((0|:[)smx])"2 5 OyBdxdxdxdxt0000S2
OyBdxdxdxdxt0000  =:(0 1 2 3|:])"5@OyBdxdxdxdxt0000S3

OyBdxdxdxdxt0001S0=:ydxdx    ((0|:[)smx])"3 4 OyBD4dydydy
OyBdxdxdxdxt0001S1=:ydx      ((0|:[)smx])"2 5 OyBdxdxdxdxt0001S0
OyBdxdxdxdxt0001S2=:ydx      ((0|:[)smx])"2 5 OyBdxdxdxdxt0001S1
OyBdxdxdxdxt0001  =:(0 1 2 3|:])"5@OyBdxdxdxdxt0001S2

OyBdxdxdxdxt0002S0=:ydx      ((0|:[)smx])"2 4 OyBD4dydydy
OyBdxdxdxdxt0002S1=:ydxdx    ((0|:[)smx])"3 4 OyBdxdxdxdxt0002S0
OyBdxdxdxdxt0002S2=:ydx      ((0|:[)smx])"2 5 OyBdxdxdxdxt0002S1
OyBdxdxdxdxt0002  =:(0 1 3 2|:])"5@OyBdxdxdxdxt0002S2

OyBdxdxdxdxt0003S0=:ydx      ((0|:[)smx])"2 4 OyBD4dydydy
OyBdxdxdxdxt0003S1=:ydx      ((0|:[)smx])"2 4 OyBdxdxdxdxt0003S0
OyBdxdxdxdxt0003S2=:ydxdx    ((0|:[)smx])"3 4 OyBdxdxdxdxt0003S1
OyBdxdxdxdxt0003  =:(0 2 3 1|:])"5@OyBdxdxdxdxt0003S2

OyBdxdxdxdxt0010S0=:ydx      ((0|:[)smx])"2 4 OyBD4dydydy
OyBdxdxdxdxt0010S1=:ydxdx    ((0|:[)smx])"3 4 OyBdxdxdxdxt0010S0
OyBdxdxdxdxt0010S2=:ydx      ((0|:[)smx])"2 5 OyBdxdxdxdxt0010S1
OyBdxdxdxdxt0010  =:(0 1 2 3|:])"5@OyBdxdxdxdxt0010S2

OyBdxdxdxdxt0011S0=:ydxdxdx  ((0|:[)smx])"4 3 OyBD4dydy
OyBdxdxdxdxt0011S1=:ydx      ((0|:[)smx])"2 5 OyBdxdxdxdxt0011S0
OyBdxdxdxdxt0011  =:(0 1 2 3|:])"5@OyBdxdxdxdxt0011S1

OyBdxdxdxdxt0012S0=:ydxdx    ((0|:[)smx])"3 3 OyBD4dydy
OyBdxdxdxdxt0012S1=:ydxdx    ((0|:[)smx])"3 4 OyBdxdxdxdxt0012S0
OyBdxdxdxdxt0012  =:(0 2 3 1|:])"5@OyBdxdxdxdxt0012S1

OyBdxdxdxdxt0020S0=:ydx      ((0|:[)smx])"2 4 OyBD4dydydy
OyBdxdxdxdxt0020S1=:ydx      ((0|:[)smx])"2 4 OyBdxdxdxdxt0020S0
OyBdxdxdxdxt0020S2=:ydxdx    ((0|:[)smx])"3 4 OyBdxdxdxdxt0020S1
OyBdxdxdxdxt0020  =:(0 2 1 3|:])"5@OyBdxdxdxdxt0020S2

OyBdxdxdxdxt0021S0=:ydxdx    ((0|:[)smx])"3 3 OyBD4dydy
OyBdxdxdxdxt0021S1=:ydxdx    ((0|:[)smx])"3 4 OyBdxdxdxdxt0021S0
OyBdxdxdxdxt0021  =:(0 2 1 3|:])"5@OyBdxdxdxdxt0021S1

OyBdxdxdxdxt0022S0=:ydx      ((0|:[)smx])"2 3 OyBD4dydy
OyBdxdxdxdxt0022S1=:ydxdxdx  ((0|:[)smx])"4 3 OyBdxdxdxdxt0022S0
OyBdxdxdxdxt0022  =:(0 3 1 2|:])"5@OyBdxdxdxdxt0022S1

OyBdxdxdxdxt0100S0=:ydx      ((0|:[)smx])"2 4 OyBD4dydydy
OyBdxdxdxdxt0100S1=:ydx      ((0|:[)smx])"2 4 OyBdxdxdxdxt0100S0
OyBdxdxdxdxt0100S2=:ydxdx    ((0|:[)smx])"3 4 OyBdxdxdxdxt0100S1
OyBdxdxdxdxt0100  =:(0 1 2 3|:])"5@OyBdxdxdxdxt0100S2

OyBdxdxdxdxt0101S0=:ydxdx    ((0|:[)smx])"3 3 OyBD4dydy
OyBdxdxdxdxt0101S1=:ydxdx    ((0|:[)smx])"3 4 OyBdxdxdxdxt0101S0
OyBdxdxdxdxt0101  =:(0 1 2 3|:])"5@OyBdxdxdxdxt0101S1

OyBdxdxdxdxt0102S0=:ydx      ((0|:[)smx])"2 3 OyBD4dydy
OyBdxdxdxdxt0102S1=:ydxdxdx  ((0|:[)smx])"4 3 OyBdxdxdxdxt0102S0
OyBdxdxdxdxt0102  =:(0 1 3 2|:])"5@OyBdxdxdxdxt0102S1

OyBdxdxdxdxt0110S0=:ydx      ((0|:[)smx])"2 3 OyBD4dydy
OyBdxdxdxdxt0110S1=:ydxdxdx  ((0|:[)smx])"4 3 OyBdxdxdxdxt0110S0
OyBdxdxdxdxt0110  =:(0 1 2 3|:])"5@OyBdxdxdxdxt0110S1

OyBdxdxdxdxt0111S0=:ydxdxdxdx((0|:[)smx])"5 2 OyBD4dy
OyBdxdxdxdxt0111  =:(0 1 2 3|:])"5@OyBdxdxdxdxt0111S0

OyBdxdxdxdxA=:OyBdxdxdxdxt0000+OyBdxdxdxdxt0001+OyBdxdxdxdxt0002+OyBdxdxdxdxt0003
OyBdxdxdxdxB=:OyBdxdxdxdxt0010+OyBdxdxdxdxt0011+OyBdxdxdxdxt0012
OyBdxdxdxdxC=:OyBdxdxdxdxt0020+OyBdxdxdxdxt0021+OyBdxdxdxdxt0022
OyBdxdxdxdxD=:OyBdxdxdxdxt0100+OyBdxdxdxdxt0101+OyBdxdxdxdxt0102
OyBdxdxdxdxE=:OyBdxdxdxdxt0110+OyBdxdxdxdxt0111

OyBdxdxdxdx=:OyBdxdxdxdxA+OyBdxdxdxdxB+OyBdxdxdxdxC+OyBdxdxdxdxD+OyBdxdxdxdxE


NB. ... execute (ijx) ...

   gXcw   =:   1      0     _      _     _  "_
   gXpAll =:   0      0     0      0     0  "_
   gXq2All=:   0.03   0.03  0.03  _0.5   _  "_
   gXq3All=:  _0.1   _0.7   4     _1     0.2"_
   gXq4All=:   0.03   0.03  0.03   1     _  "_
   gXq5All=:   1      1     3      1    _3  "_
   gXq6All=:   0.03   0.03  0.03   0.5   _  "_
   gXq7All=:   1      1.1   3      1.2  _2  "_

   xCpts=:_ 9 83 26,_ 0 1p1 26,_ 0 2p1 26,:_ 0 2 26"_

   A=:(gXB([OyBdx hkxG)]) ((0.1;50"_)pTRandom xCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OyBD4 hkxG),:@])D.1])"_ 1)]) ((0.1;50"_)pTRandom xCpts)''

   A (((2^_26);2^_16)qteq[;])"2 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   A=:(gXB([OyBdxdx hkxG)]) ((0.1;50"_)pTRandom xCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OyBdx hkxG),:@])D.1])"_ 1)]) ((0.1;50"_)pTRandom xCpts)''

   A (((2^_27);2^_11)qteq[;])"3 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   A=:(gXB([OyBdxdxdx hkxG)]) ((0.1;50"_)pTRandom xCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OyBdxdx hkxG),:@])D.1])"_ 1)]) ((0.1;50"_)pTRandom xCpts)''

   A (((2^_25);2^_11)qteq[;])"4 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   A=:(gXB([OyBdxdxdxdx hkxG)]) ((0.1;50"_)pTRandom xCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OyBdxdxdx hkxG),:@])D.1])"_ 1)]) ((0.1;50"_)pTRandom xCpts)''

   A (((2^_23);2^_11)qteq[;])"5 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1


NB. ... script experimentalB.ijs ...

OxB=:xdy smx"2 1 OyBD4


OxBdxt0=:xdy  ((   [)smx 0|:])"2 2 OyBdx
OxBdxt1=:xdydx((1|:[)smx    ])"3 1 OyBD4

OxBdx=:OxBdxt0+OxBdxt1


OxBdxdxt0=:(   ])"3@(xdy    ((   [)smx 0|:])"2 3 OyBdxdx)
OxBdxdxt1=:(1|:])"3@(xdydx  ((1|:[)smx 0|:])"3 2 OyBdx  )
OxBdxdxt2=:(   ])"3@(xdydx  ((1|:[)smx 0|:])"3 2 OyBdx  )
OxBdxdxt3=:(   ])"3@(xdydxdx((1|:[)smx    ])"4 1 OyBD4  )

OxBdxdx=:OxBdxdxt0+OxBdxdxt1+OxBdxdxt2+OxBdxdxt3


OxBdxdxdxt00=:(     ])"4@(xdy      ((   [)smx 0|:])"2 4 OyBdxdxdx)
OxBdxdxdxt01=:(  1|:])"4@(xdydx    ((1|:[)smx 0|:])"3 3 OyBdxdx  )
OxBdxdxdxt10=:(1 3|:])"4@(xdydx    ((1|:[)smx 0|:])"3 3 OyBdxdx  )
OxBdxdxdxt11=:(1 2|:])"4@(xdydxdx  ((1|:[)smx 0|:])"4 2 OyBdx    )
OxBdxdxdxt20=:(     ])"4@(xdydx    ((1|:[)smx 0|:])"3 3 OyBdxdx  )
OxBdxdxdxt21=:(  2|:])"4@(xdydxdx  ((1|:[)smx 0|:])"4 2 OyBdx    )
OxBdxdxdxt30=:(     ])"4@(xdydxdx  ((1|:[)smx 0|:])"4 2 OyBdx    )
OxBdxdxdxt31=:(     ])"4@(xdydxdxdx((1|:[)smx    ])"5 1 OyBD4    )

OxBdxdxdxt0=:OxBdxdxdxt00+OxBdxdxdxt01
OxBdxdxdxt1=:OxBdxdxdxt10+OxBdxdxdxt11
OxBdxdxdxt2=:OxBdxdxdxt20+OxBdxdxdxt21
OxBdxdxdxt3=:OxBdxdxdxt30+OxBdxdxdxt31

OxBdxdxdx=:OxBdxdxdxt0+OxBdxdxdxt1+OxBdxdxdxt2+OxBdxdxdxt3


OxBdxdxdxdxt00=:(       ])"5@(xdy        ((   [)smx 0|:])"2 5 OyBdxdxdxdx)
OxBdxdxdxdxt01=:(    1|:])"5@(xdydx      ((1|:[)smx 0|:])"3 4 OyBdxdxdx  )
OxBdxdxdxdxt02=:(  1 4|:])"5@(xdydx      ((1|:[)smx 0|:])"3 4 OyBdxdxdx  )
OxBdxdxdxdxt03=:(  1 2|:])"5@(xdydxdx    ((1|:[)smx 0|:])"4 3 OyBdxdx    )
OxBdxdxdxdxt10=:(1 3 4|:])"5@(xdydx      ((1|:[)smx 0|:])"3 4 OyBdxdxdx  )
OxBdxdxdxdxt11=:(1 4 2|:])"5@(xdydxdx    ((1|:[)smx 0|:])"4 3 OyBdxdx    )
OxBdxdxdxdxt12=:(1 2 4|:])"5@(xdydxdx    ((1|:[)smx 0|:])"4 3 OyBdxdx    )
OxBdxdxdxdxt13=:(1 2 3|:])"5@(xdydxdxdx  ((1|:[)smx 0|:])"5 2 OyBdx      )
OxBdxdxdxdxt20=:(       ])"5@(xdydx      ((1|:[)smx 0|:])"3 4 OyBdxdxdx  )
OxBdxdxdxdxt21=:(    2|:])"5@(xdydxdx    ((1|:[)smx 0|:])"4 3 OyBdxdx    )
OxBdxdxdxdxt22=:(  2 4|:])"5@(xdydxdx    ((1|:[)smx 0|:])"4 3 OyBdxdx    )
OxBdxdxdxdxt23=:(  2 3|:])"5@(xdydxdxdx  ((1|:[)smx 0|:])"5 2 OyBdx      )
OxBdxdxdxdxt30=:(       ])"5@(xdydxdx    ((1|:[)smx 0|:])"4 3 OyBdxdx    )
OxBdxdxdxdxt31=:(    3|:])"5@(xdydxdxdx  ((1|:[)smx 0|:])"5 2 OyBdx      )
OxBdxdxdxdxt32=:(       ])"5@(xdydxdxdx  ((1|:[)smx 0|:])"5 2 OyBdx      )
OxBdxdxdxdxt33=:(       ])"5@(xdydxdxdxdx((1|:[)smx    ])"6 1 OyBD4      )

OxBdxdxdxdxt0=:OxBdxdxdxdxt00+OxBdxdxdxdxt01+OxBdxdxdxdxt02+OxBdxdxdxdxt03
OxBdxdxdxdxt1=:OxBdxdxdxdxt10+OxBdxdxdxdxt11+OxBdxdxdxdxt12+OxBdxdxdxdxt13
OxBdxdxdxdxt2=:OxBdxdxdxdxt20+OxBdxdxdxdxt21+OxBdxdxdxdxt22+OxBdxdxdxdxt23
OxBdxdxdxdxt3=:OxBdxdxdxdxt30+OxBdxdxdxdxt31+OxBdxdxdxdxt32+OxBdxdxdxdxt33

OxBdxdxdxdx=:OxBdxdxdxdxt0+OxBdxdxdxdxt1+OxBdxdxdxdxt2+OxBdxdxdxdxt3


NB. ... execute (ijx) ...

   gXcw   =:   1       0      _       _     _  "_
   gXpAll =:   0       0      0       0     0  "_
   gXq2All=:   0.025   0.030  0.035  _0.5   _  "_
   gXq3All=:  _0.1    _0.7    4      _1     0.2"_
   gXq4All=:   0.025   0.030  0.035   1     _  "_
   gXq5All=:   1       1      3       1    _3  "_
   gXq6All=:   0.025   0.030  0.035   0.5   _  "_
   gXq7All=:   1       1.1    3       1.2  _2  "_

   xCpts=:_ 9 83 26,_ 0 1p1 26,_ 0 2p1 26,:_ 0 2 26"_

   A=:(gXB([OxBdx hkxG)]) ((0.1;50"_)pTRandom xCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OxB hkxG),:@])D.1])"_ 1)]) ((0.1;50"_)pTRandom xCpts)''

   A (((2^_44);2^_12)qteq[;])"2 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   A=:(gXB([OxBdxdx hkxG)]) ((0.1;50"_)pTRandom xCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OxBdx hkxG),:@])D.1])"_ 1)]) ((0.1;50"_)pTRandom xCpts)''

   A (((2^_44);2^_14)qteq[;])"3 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   A=:(gXB([OxBdxdxdx hkxG)]) ((0.1;50"_)pTRandom xCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OxBdxdx hkxG),:@])D.1])"_ 1)]) ((0.1;50"_)pTRandom xCpts)''

   A (((2^_44);2^_10)qteq[;])"4 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

   A=:(gXB([OxBdxdxdxdx hkxG)]) ((0.1;50"_)pTRandom xCpts)''
   B=:(gXB((0|:[:(gXB([(0{])@OxBdxdxdx hkxG),:@])D.1])"_ 1)]) ((0.1;50"_)pTRandom xCpts)''

   A (((2^_44);2^_07)qteq[;])"5 B
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1


NB. ... script experimentalB.ijs ...

OxBXX=:OxB;OxBdx;OxBdxdx;OxBdxdxdx;OxBdxdxdxdx;_"_

hkxH=:[(],OxBXX)hkxG
hkyH=:[(],OxBXX)hkyG



Download MoinMoin source: File:TensorExperimentsB04.ijs