User:Tom Allen/TensorExperimentsR22
Jump to navigation
Jump to search
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 2 8 1 1 8 _8 0 0"_) gXSAll=:,:@(0.15 1 2 8 1 1 8 8 0 0"_) Initx =: 0.94 , 0.5p1 , 0.03125p1 , 0p1 "_ Initdx=: (0 , 0 , 0 , 0.04"_)*%@(1"_) vS00xL =:Initx vS01dxL =:0,0,0,0: vS02d1L =:Initd1 vS06ds =:Initds vS07count =:(0,30000"_)*1"_ pdDA =:vSgD@vS'' pdDA arrayPut 'pdDA' arrayClose 'pdDA' Initx =: 0.94 , 0.5p1 , 0.03125p1 , 0p1 "_ Initdx=: (0 , 0 , 0 , 0.04"_)*%@(2"_) vS00xL =:Initx vS01dxL =:0,0,0,0: vS02d1L =:Initd1 vS06ds =:Initds vS07count =:(0,15000"_)*2"_ pdDB =:vSgD@vS'' pdDB arrayPut 'pdDB' arrayClose 'pdDB'
NB. ... execute (ijx) ... arrayOpen 'pdDA' pdDA=:30001 8 4 arrayGet 'pdDA' NB. ... shape required ... arrayClose 'pdDA' arrayOpen 'pdDB' pdDB=:30001 8 4 arrayGet 'pdDB' NB. ... shape required ... arrayClose 'pdDB'
load 'plot' pd vSgDplot pdDA pd vSgDplot pdDB pd ((0.94*cos@]"0);0.94*sin@]"0) pTsteps _ 0p1 0.0625p1 160 pd 'aspect 1' pd 'pdf' pd 'show'
load 'plot' pd (cx3"1;cx0"1)@:((S00xL{])"2) (i.@(30001"_){]) pdDA pd (]"0;((0.94034"_)@]"0)) pTsteps _ 0 1302 160 pd (cx3"1;cx0"1)@:((S00xL{])"2) (i.@(30001"_){]) pdDB pd (]"0;((0.92078"_)@]"0)) pTsteps _ 0 1302 160 pd 'pdf' pd 'show'
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) pdDA pd (}:@:(cy3"1);incy2)@:(rfyc"1)@:((S00xL{])"2) pdDA NB. ... incy2 is zero ... pd (}:@:(cy3"1);veloc)@:(rfyc"1)@:((S00xL{])"2) pdDB pd (}:@:(cy3"1);incy2)@:(rfyc"1)@:((S00xL{])"2) pdDB NB. ... incy2 is zero ... pd (]"0;((0.04417"_)@]"0)) pTsteps _ 0 1302 160 pd 'pdf' pd 'show'
...
...
...
NB. ... NB. ... the array pdDX can be generated in about 10 days ... NB. ... on ... NB. ... an Intel Core i5-6600k processor ... NB. ... 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 2 8 1 1 8 _8 0 0"_) gXSAll=:,:@(0.15 1 2 8 1 1 8 8 0 0"_) Initx =: 0.94 , 0.5p1 , 0.03125p1 , 0p1 "_ Initdx=: (0 , 0 , 0.001 , 0.04"_)*%@(128"_) vS00xL =:Initx vS01dxL =:0,0,0,0: vS02d1L =:Initd1 vS06ds =:Initds vS07count =:(0,11250"_)*128"_ pdDX =:vSgD@vS'' pdDX arrayPut 'pdDX' arrayClose 'pdDX'
NB. ... execute (ijx) ... arrayOpen 'pdDX' pdDX=:1440001 8 4 arrayGet 'pdDX' NB. ... shape required ... arrayClose 'pdDX'
load 'plot' pd ((0.94*cos@]"0);0.94*sin@]"0) pTsteps _ 0p1 0.0625p1 160 pd vSgDplot pdDX pd 'aspect 1' pd 'pdf' pd 'show'
... the motion of energy (+/-) in space ...
... generates ...
... geodesics which are generally not straight lines ...
... and ...
... this gives rise to some interesting patterns ...
load 'plot' pd (cx3"1;cx0"1)@:((S00xL{])"2) pdDX pd (]"0;((0.94"_)@]"0)) pTsteps _ 0 490 160 pd 'pdf' pd 'show'
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) pdDX pd (}:@:(cy3"1);incy2)@:(rfyc"1)@:((S00xL{])"2) pdDX NB. ... incy2 is zero ... pd (]"0;((0.04837"_)@]"0)) pTsteps _ 0 490 160 pd 'pdf' pd 'show'