User:Tom Allen/TensorExperimentsR17

From J Wiki
Jump to navigation Jump to search


load 'plot'

gXRAll=:,:@(0.15 1.0 2 8 1 1 8 _8 0 0"_)
gXSAll=:,:@(0.15 0.9 2 8 1 1 8  8 0 0"_)

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.00p1 0.00p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@rfE1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.25p1 0.25p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@rfE1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.40p1 0.40p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@rfE1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.50p1 0.50p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@rfE1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.60p1 0.60p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@rfE1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.75p1 0.75p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@rfE1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 1.00p1 1.00p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@rfE1cn xRef@hkxR03S)]) pTtotal xCpts''

pd (((0.8800"_)@]"0);]"0) pTsteps _ _1.5 2 160

pd (((0.9400"_)@]"0);]"0) pTsteps _ _1.5 2 160

pd (((0.9900"_)@]"0);]"0) pTsteps _ _1.5 2 160

pd 'pdf'
pd 'show'


JTER1700E.jpg


vSgDd2M=.[([(0{])@rfE1cn xRef@hkxR03S),:@(S03xH{])
vSgDd2 =.gXR(-@(([([(0{])@ch2k xRef@hkxR03S),:@(S03xH{]))+/"1@((<0 2)|:])@((0|:[)smx])(]*/])@(S02d1L{]))+vSgDd2M)]

Initds2=.(gXR([(0{])@mcv xRef@hkxR03S),:@Initx)+/^:2@:*(]*/])@Initdx
Initds =.%:@|@Initds2

gXRAll=:,:@(0.15 1.0 2 8 1 1 8 _8 0 0"_)
gXSAll=:,:@(0.15 0.9 2 8 1 1 8  8 0 0"_)

Initx =:  0.88 , 0.5p1 , 0.03125p1 , 0p1 "_
Initdx=: (0    , 0     , 0.001     , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,60000"_)*1"_
pdDU      =:vSgD@vS''

pdDU arrayPut   'pdDU'
     arrayClose 'pdDU'

Initx =:  0.94 , 0.5p1 , 0.03125p1 , 0p1 "_
Initdx=: (0    , 0     , 0.001     , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdDV      =:vSgD@vS''

pdDV arrayPut   'pdDV'
     arrayClose 'pdDV'

Initx =:  0.99 , 0.5p1 , 0.03125p1 , 0p1 "_
Initdx=: (0    , 0     , 0.001     , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdDW      =:vSgD@vS''

pdDW arrayPut   'pdDW'
     arrayClose 'pdDW'


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

                arrayOpen  'pdDU'
pdDU=:60001 8 4 arrayGet   'pdDU'   NB. ... shape required ...
                arrayClose 'pdDU'

                arrayOpen  'pdDV'
pdDV=:01001 8 4 arrayGet   'pdDV'   NB. ... shape required ...
                arrayClose 'pdDV'

                arrayOpen  'pdDW'
pdDW=:01001 8 4 arrayGet   'pdDW'   NB. ... shape required ...
                arrayClose 'pdDW'


load 'plot'

pd vSgDplot pdDU
pd vSgDplot pdDV
pd vSgDplot pdDW

pd ((0.88*cos@]"0);0.88*sin@]"0) pTsteps _ 0p1 0.0625p1 160
pd ((0.94*cos@]"0);0.94*sin@]"0) pTsteps _ 0p1 0.0625p1 160
pd ((0.99*cos@]"0);0.99*sin@]"0) pTsteps _ 0p1 0.0625p1 160

pd 'aspect 1'
pd 'pdf'
pd 'show'


JTER1701E.jpg
... geodesics in a standing wave ...


load 'plot'

gXRAll=:,:@(0.15 1.0 2 8 1 1 8 _8 0 0"_)
gXSAll=:,:@(0.15 0.9 2 8 1 1 8  8 0 0"_)

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.00p1 0.00p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@E1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.25p1 0.25p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@E1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.40p1 0.40p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@E1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.50p1 0.50p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@E1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.60p1 0.60p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@E1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 0.75p1 0.75p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@E1cn xRef@hkxR03S)]) pTtotal xCpts''

xCpts=:_ 0.3 2.0 200,_ 0.5p1 0.5p1 0,(_ 0.25p1 0.25p1 0"_*0.125"_),:_ 1.00p1 1.00p1 0"_*0.125"_

pd (gXR(cx0"_ 1;[(0{])"1@E1cn xRef@hkxR03S)]) pTtotal xCpts''

pd (((1.1500"_)@]"0);]"0) pTsteps _ _2 1.5 160

pd (((1.1700"_)@]"0);]"0) pTsteps _ _2 1.5 160

pd (((1.1600"_)@]"0);]"0) pTsteps _ _2 1.5 160

pd 'pdf'
pd 'show'


JTER1702F.jpg


vSgDd2M=.[([(0{])@E1cn xRef@hkxR03S),:@(S03xH{])
vSgDd2 =.gXR(-@(([([(0{])@ch2k xRef@hkxR03S),:@(S03xH{]))+/"1@((<0 2)|:])@((0|:[)smx])(]*/])@(S02d1L{]))+vSgDd2M)]

Initds2=.(gXR([(0{])@mcv xRef@hkxR03S),:@Initx)+/^:2@:*(]*/])@Initdx
Initds =.%:@|@Initds2

gXRAll=:,:@(0.15 1.0 2 8 1 1 8 _8 0 0"_)
gXSAll=:,:@(0.15 0.9 2 8 1 1 8  8 0 0"_)

Initx =:  1.15 , 0.5p1 , 0.03125p1 , 0p1 "_
Initdx=: (0    , 0     , 0.0001    , 0.02"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,80000"_)*1"_
pdDX      =:vSgD@vS''

pdDX arrayPut   'pdDX'
     arrayClose 'pdDX'

Initx =:  1.17 , 0.5p1 , 0.03125p1 , 0p1 "_
Initdx=: (0    , 0     , 0.0001    , 0.02"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,5000"_)*1"_
pdDY      =:vSgD@vS''

pdDY arrayPut   'pdDY'
     arrayClose 'pdDY'

Initx =:  1.16 , 0.5p1 , 0.03125p1 , 0p1 "_
Initdx=: (0    , 0     , 0.0001    , 0.02"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,5000"_)*1"_
pdDZ      =:vSgD@vS''

pdDZ arrayPut   'pdDZ'
     arrayClose 'pdDZ'


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

                arrayOpen  'pdDX'
pdDX=:80001 8 4 arrayGet   'pdDX'   NB. ... shape required ...
                arrayClose 'pdDX'

                arrayOpen  'pdDY'
pdDY=:05001 8 4 arrayGet   'pdDY'   NB. ... shape required ...
                arrayClose 'pdDY'

                arrayOpen  'pdDZ'
pdDZ=:05001 8 4 arrayGet   'pdDZ'   NB. ... shape required ...
                arrayClose 'pdDZ'


load 'plot'

pd vSgDplot pdDX
pd vSgDplot pdDY
pd vSgDplot pdDZ

pd ((1.15*cos@]"0);1.15*sin@]"0) pTsteps _ 0p1 0.0625p1 160
pd ((1.17*cos@]"0);1.17*sin@]"0) pTsteps _ 0p1 0.0625p1 160
pd ((1.16*cos@]"0);1.16*sin@]"0) pTsteps _ 0p1 0.0625p1 160

pd 'aspect 1'
pd 'pdf'
pd 'show'


JTER1703C.jpg
... geodesics in a standing wave ...


vSgDd2M=.[([(0{])@rfE1cn xRef@hkxR03S),:@(S03xH{])
vSgDd2 =.gXR(-@(([([(0{])@ch2k xRef@hkxR03S),:@(S03xH{]))+/"1@((<0 2)|:])@((0|:[)smx])(]*/])@(S02d1L{]))+vSgDd2M)]

Initds2=.(gXR([(0{])@mcv xRef@hkxR03S),:@Initx)+/^:2@:*(]*/])@Initdx
Initds =.%:@|@Initds2

gXRAll=:,:@(0.15 1.0 2 8 1 1 8 _8 0 0"_)
gXSAll=:,:@(0.15 0.9 2 8 1 1 8  8 0 0"_)

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(0*2p1*0.125)+(2p1*0.125)*0.00) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdEA      =:vSgD@vS''

pdEA arrayPut   'pdEA'
     arrayClose 'pdEA'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(1*2p1*0.125)+(2p1*0.125)*0.00) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdEB      =:vSgD@vS''

pdEB arrayPut   'pdEB'
     arrayClose 'pdEB'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(2*2p1*0.125)+(2p1*0.125)*0.00) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdEC      =:vSgD@vS''

pdEC arrayPut   'pdEC'
     arrayClose 'pdEC'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(3*2p1*0.125)+(2p1*0.125)*0.00) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdED      =:vSgD@vS''

pdED arrayPut   'pdED'
     arrayClose 'pdED'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(4*2p1*0.125)+(2p1*0.125)*0.00) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdEE      =:vSgD@vS''

pdEE arrayPut   'pdEE'
     arrayClose 'pdEE'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(5*2p1*0.125)+(2p1*0.125)*0.00) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdEF      =:vSgD@vS''

pdEF arrayPut   'pdEF'
     arrayClose 'pdEF'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(6*2p1*0.125)+(2p1*0.125)*0.00) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdEG      =:vSgD@vS''

pdEG arrayPut   'pdEG'
     arrayClose 'pdEG'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(7*2p1*0.125)+(2p1*0.125)*0.00) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdEH      =:vSgD@vS''

pdEH arrayPut   'pdEH'
     arrayClose 'pdEH'


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

               arrayOpen  'pdEA'
pdEA=:1001 8 4 arrayGet   'pdEA'   NB. ... shape required ...
               arrayClose 'pdEA'

               arrayOpen  'pdEB'
pdEB=:1001 8 4 arrayGet   'pdEB'   NB. ... shape required ...
               arrayClose 'pdEB'

               arrayOpen  'pdEC'
pdEC=:1001 8 4 arrayGet   'pdEC'   NB. ... shape required ...
               arrayClose 'pdEC'

               arrayOpen  'pdED'
pdED=:1001 8 4 arrayGet   'pdED'   NB. ... shape required ...
               arrayClose 'pdED'

               arrayOpen  'pdEE'
pdEE=:1001 8 4 arrayGet   'pdEE'   NB. ... shape required ...
               arrayClose 'pdEE'

               arrayOpen  'pdEF'
pdEF=:1001 8 4 arrayGet   'pdEF'   NB. ... shape required ...
               arrayClose 'pdEF'

               arrayOpen  'pdEG'
pdEG=:1001 8 4 arrayGet   'pdEG'   NB. ... shape required ...
               arrayClose 'pdEG'

               arrayOpen  'pdEH'
pdEH=:1001 8 4 arrayGet   'pdEH'   NB. ... shape required ...
               arrayClose 'pdEH'


vSgDd2M=.[([(0{])@rfE1cn xRef@hkxR03S),:@(S03xH{])
vSgDd2 =.gXR(-@(([([(0{])@ch2k xRef@hkxR03S),:@(S03xH{]))+/"1@((<0 2)|:])@((0|:[)smx])(]*/])@(S02d1L{]))+vSgDd2M)]

Initds2=.(gXR([(0{])@mcv xRef@hkxR03S),:@Initx)+/^:2@:*(]*/])@Initdx
Initds =.%:@|@Initds2

gXRAll=:,:@(0.15 1.0 2 8 1 1 8 _8 0 0"_)
gXSAll=:,:@(0.15 0.9 2 8 1 1 8  8 0 0"_)

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(0*2p1*0.125)+(2p1*0.125)*0.50) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdFA      =:vSgD@vS''

pdFA arrayPut   'pdFA'
     arrayClose 'pdFA'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(1*2p1*0.125)+(2p1*0.125)*0.50) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdFB      =:vSgD@vS''

pdFB arrayPut   'pdFB'
     arrayClose 'pdFB'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(2*2p1*0.125)+(2p1*0.125)*0.50) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdFC      =:vSgD@vS''

pdFC arrayPut   'pdFC'
     arrayClose 'pdFC'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(3*2p1*0.125)+(2p1*0.125)*0.50) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdFD      =:vSgD@vS''

pdFD arrayPut   'pdFD'
     arrayClose 'pdFD'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(4*2p1*0.125)+(2p1*0.125)*0.50) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdFE      =:vSgD@vS''

pdFE arrayPut   'pdFE'
     arrayClose 'pdFE'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(5*2p1*0.125)+(2p1*0.125)*0.50) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdFF      =:vSgD@vS''

pdFF arrayPut   'pdFF'
     arrayClose 'pdFF'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(6*2p1*0.125)+(2p1*0.125)*0.50) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdFG      =:vSgD@vS''

pdFG arrayPut   'pdFG'
     arrayClose 'pdFG'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(7*2p1*0.125)+(2p1*0.125)*0.50) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdFH      =:vSgD@vS''

pdFH arrayPut   'pdFH'
     arrayClose 'pdFH'


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

               arrayOpen  'pdFA'
pdFA=:1001 8 4 arrayGet   'pdFA'   NB. ... shape required ...
               arrayClose 'pdFA'

               arrayOpen  'pdFB'
pdFB=:1001 8 4 arrayGet   'pdFB'   NB. ... shape required ...
               arrayClose 'pdFB'

               arrayOpen  'pdFC'
pdFC=:1001 8 4 arrayGet   'pdFC'   NB. ... shape required ...
               arrayClose 'pdFC'

               arrayOpen  'pdFD'
pdFD=:1001 8 4 arrayGet   'pdFD'   NB. ... shape required ...
               arrayClose 'pdFD'

               arrayOpen  'pdFE'
pdFE=:1001 8 4 arrayGet   'pdFE'   NB. ... shape required ...
               arrayClose 'pdFE'

               arrayOpen  'pdFF'
pdFF=:1001 8 4 arrayGet   'pdFF'   NB. ... shape required ...
               arrayClose 'pdFF'

               arrayOpen  'pdFG'
pdFG=:1001 8 4 arrayGet   'pdFG'   NB. ... shape required ...
               arrayClose 'pdFG'

               arrayOpen  'pdFH'
pdFH=:1001 8 4 arrayGet   'pdFH'   NB. ... shape required ...
               arrayClose 'pdFH'


vSgDd2M=.[([(0{])@E1cn xRef@hkxR03S),:@(S03xH{])
vSgDd2 =.gXR(-@(([([(0{])@ch2k xRef@hkxR03S),:@(S03xH{]))+/"1@((<0 2)|:])@((0|:[)smx])(]*/])@(S02d1L{]))+vSgDd2M)]

Initds2=.(gXR([(0{])@mcv xRef@hkxR03S),:@Initx)+/^:2@:*(]*/])@Initdx
Initds =.%:@|@Initds2

gXRAll=:,:@(0.15 1.0 2 8 1 1 8 _8 0 0"_)
gXSAll=:,:@(0.15 0.9 2 8 1 1 8  8 0 0"_)

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(0*2p1*0.125)+(2p1*0.125)*0.25) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdGA      =:vSgD@vS''

pdGA arrayPut   'pdGA'
     arrayClose 'pdGA'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(1*2p1*0.125)+(2p1*0.125)*0.25) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdGB      =:vSgD@vS''

pdGB arrayPut   'pdGB'
     arrayClose 'pdGB'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(2*2p1*0.125)+(2p1*0.125)*0.25) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdGC      =:vSgD@vS''

pdGC arrayPut   'pdGC'
     arrayClose 'pdGC'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(3*2p1*0.125)+(2p1*0.125)*0.25) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdGD      =:vSgD@vS''

pdGD arrayPut   'pdGD'
     arrayClose 'pdGD'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(4*2p1*0.125)+(2p1*0.125)*0.25) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdGE      =:vSgD@vS''

pdGE arrayPut   'pdGE'
     arrayClose 'pdGE'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(5*2p1*0.125)+(2p1*0.125)*0.25) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdGF      =:vSgD@vS''

pdGF arrayPut   'pdGF'
     arrayClose 'pdGF'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(6*2p1*0.125)+(2p1*0.125)*0.25) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdGG      =:vSgD@vS''

pdGG arrayPut   'pdGG'
     arrayClose 'pdGG'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(7*2p1*0.125)+(2p1*0.125)*0.25) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdGH      =:vSgD@vS''

pdGH arrayPut   'pdGH'
     arrayClose 'pdGH'


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

               arrayOpen  'pdGA'
pdGA=:1001 8 4 arrayGet   'pdGA'   NB. ... shape required ...
               arrayClose 'pdGA'

               arrayOpen  'pdGB'
pdGB=:1001 8 4 arrayGet   'pdGB'   NB. ... shape required ...
               arrayClose 'pdGB'

               arrayOpen  'pdGC'
pdGC=:1001 8 4 arrayGet   'pdGC'   NB. ... shape required ...
               arrayClose 'pdGC'

               arrayOpen  'pdGD'
pdGD=:1001 8 4 arrayGet   'pdGD'   NB. ... shape required ...
               arrayClose 'pdGD'

               arrayOpen  'pdGE'
pdGE=:1001 8 4 arrayGet   'pdGE'   NB. ... shape required ...
               arrayClose 'pdGE'

               arrayOpen  'pdGF'
pdGF=:1001 8 4 arrayGet   'pdGF'   NB. ... shape required ...
               arrayClose 'pdGF'

               arrayOpen  'pdGG'
pdGG=:1001 8 4 arrayGet   'pdGG'   NB. ... shape required ...
               arrayClose 'pdGG'

               arrayOpen  'pdGH'
pdGH=:1001 8 4 arrayGet   'pdGH'   NB. ... shape required ...
               arrayClose 'pdGH'


vSgDd2M=.[([(0{])@E1cn xRef@hkxR03S),:@(S03xH{])
vSgDd2 =.gXR(-@(([([(0{])@ch2k xRef@hkxR03S),:@(S03xH{]))+/"1@((<0 2)|:])@((0|:[)smx])(]*/])@(S02d1L{]))+vSgDd2M)]

Initds2=.(gXR([(0{])@mcv xRef@hkxR03S),:@Initx)+/^:2@:*(]*/])@Initdx
Initds =.%:@|@Initds2

gXRAll=:,:@(0.15 1.0 2 8 1 1 8 _8 0 0"_)
gXSAll=:,:@(0.15 0.9 2 8 1 1 8  8 0 0"_)

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(0*2p1*0.125)+(2p1*0.125)*0.75) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdHA      =:vSgD@vS''

pdHA arrayPut   'pdHA'
     arrayClose 'pdHA'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(1*2p1*0.125)+(2p1*0.125)*0.75) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdHB      =:vSgD@vS''

pdHB arrayPut   'pdHB'
     arrayClose 'pdHB'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(2*2p1*0.125)+(2p1*0.125)*0.75) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdHC      =:vSgD@vS''

pdHC arrayPut   'pdHC'
     arrayClose 'pdHC'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(3*2p1*0.125)+(2p1*0.125)*0.75) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdHD      =:vSgD@vS''

pdHD arrayPut   'pdHD'
     arrayClose 'pdHD'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(4*2p1*0.125)+(2p1*0.125)*0.75) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdHE      =:vSgD@vS''

pdHE arrayPut   'pdHE'
     arrayClose 'pdHE'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(5*2p1*0.125)+(2p1*0.125)*0.75) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdHF      =:vSgD@vS''

pdHF arrayPut   'pdHF'
     arrayClose 'pdHF'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(6*2p1*0.125)+(2p1*0.125)*0.75) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdHG      =:vSgD@vS''

pdHG arrayPut   'pdHG'
     arrayClose 'pdHG'

Initx =:  0.94 , 0.5p1 , ((0.25p1*0.125)+(7*2p1*0.125)+(2p1*0.125)*0.75) , 0p1 "_
Initdx=: (0    , 0     , 0.001                                           , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,1000"_)*1"_
pdHH      =:vSgD@vS''

pdHH arrayPut   'pdHH'
     arrayClose 'pdHH'


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

               arrayOpen  'pdHA'
pdHA=:1001 8 4 arrayGet   'pdHA'   NB. ... shape required ...
               arrayClose 'pdHA'

               arrayOpen  'pdHB'
pdHB=:1001 8 4 arrayGet   'pdHB'   NB. ... shape required ...
               arrayClose 'pdHB'

               arrayOpen  'pdHC'
pdHC=:1001 8 4 arrayGet   'pdHC'   NB. ... shape required ...
               arrayClose 'pdHC'

               arrayOpen  'pdHD'
pdHD=:1001 8 4 arrayGet   'pdHD'   NB. ... shape required ...
               arrayClose 'pdHD'

               arrayOpen  'pdHE'
pdHE=:1001 8 4 arrayGet   'pdHE'   NB. ... shape required ...
               arrayClose 'pdHE'

               arrayOpen  'pdHF'
pdHF=:1001 8 4 arrayGet   'pdHF'   NB. ... shape required ...
               arrayClose 'pdHF'

               arrayOpen  'pdHG'
pdHG=:1001 8 4 arrayGet   'pdHG'   NB. ... shape required ...
               arrayClose 'pdHG'

               arrayOpen  'pdHH'
pdHH=:1001 8 4 arrayGet   'pdHH'   NB. ... shape required ...
               arrayClose 'pdHH'


load 'plot'

pd vSgDplot pdEA
pd vSgDplot pdEB
pd vSgDplot pdEC
pd vSgDplot pdED
pd vSgDplot pdEE
pd vSgDplot pdEF
pd vSgDplot pdEG
pd vSgDplot pdEH

pd vSgDplot pdFA
pd vSgDplot pdFB
pd vSgDplot pdFC
pd vSgDplot pdFD
pd vSgDplot pdFE
pd vSgDplot pdFF
pd vSgDplot pdFG
pd vSgDplot pdFH

pd vSgDplot pdGA
pd vSgDplot pdGB
pd vSgDplot pdGC
pd vSgDplot pdGD
pd vSgDplot pdGE
pd vSgDplot pdGF
pd vSgDplot pdGG
pd vSgDplot pdGH

pd vSgDplot pdHA
pd vSgDplot pdHB
pd vSgDplot pdHC
pd vSgDplot pdHD
pd vSgDplot pdHE
pd vSgDplot pdHF
pd vSgDplot pdHG
pd vSgDplot pdHH

pd ((0.94*cos@]"0);0.94*sin@]"0) pTsteps _ 0 2p1 160

pd 'aspect 1'
pd 'pdf'
pd 'show'


JTER1704F.jpg
... geodesics in a standing wave ...


vSgDd2M=.[([(0{])@rfE1cn xRef@hkxR03S),:@(S03xH{])
vSgDd2 =.gXR(-@(([([(0{])@ch2k xRef@hkxR03S),:@(S03xH{]))+/"1@((<0 2)|:])@((0|:[)smx])(]*/])@(S02d1L{]))+vSgDd2M)]

Initds2=.(gXR([(0{])@mcv xRef@hkxR03S),:@Initx)+/^:2@:*(]*/])@Initdx
Initds =.%:@|@Initds2

gXRAll=:,:@(0.15 1.0 2 8 1 1 8 _8 0 0"_)
gXSAll=:,:@(0.15 0.9 2 8 1 1 8  8 0 0"_)

Initx =:  0.99 , 0.5p1 , 0.03125p1 , 0p1 "_
Initdx=: (0    , 0     , 0.001     , 0.04"_)*%@(1"_)

vS00xL    =:Initx
vS01dxL   =:0,0,0,0:
vS02d1L   =:Initd1
vS06ds    =:Initds
vS07count =:(0,72000"_)*1"_
pdIA      =:vSgD@vS''

pdIA arrayPut   'pdIA'
     arrayClose 'pdIA'


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

                arrayOpen  'pdIA'
pdIA=:72001 8 4 arrayGet   'pdIA'   NB. ... shape required ...
                arrayClose 'pdIA'


load 'plot'

pd vSgDplot pdIA

pd ((0.99*cos@]"0);0.99*sin@]"0) pTsteps _ 0p1 0.0625p1 160

pd 'aspect 1'
pd 'pdf'
pd 'show'


JTER1705C.jpg
... geodesic localized in standing wave ...


load 'plot'

pd (cx3"1;cx0"1)@:((S00xL{])"2) (i.@(72001"_){]) pdIA

pd 'pdf'
pd 'show'


JTER1706C.jpg
... x0 increases with elapsed time along geodesic ...


load 'plot'

incy0=.(2-~/\])@:(cy0"1)
incy1=.(2-~/\])@:(cy1"1)
incy2=.(2-~/\])@:(cy2"1)
incy3=.(2-~/\])@:(cy3"1)
veloc=.(((incy0^2:)+incy1^2:)^0.5"_)%incy3

pd (}:@:(cy3"1);veloc)@:(rfyc"1)@:((S00xL{])"2) (i.@(72001"_){]) pdIA

pd (}:@:(cy3"1);incy2)@:(rfyc"1)@:((S00xL{])"2) (i.@(72001"_){]) pdIA    NB. ... incy2 is zero ...

pd 'pdf'
pd 'show'


JTER1707D.jpg
... velocity with elapsed time along geodesic ...