My network
My network
In[]:=
n(*numerodimodi*)=2;cn(*N*)=2n;
In[]:=
zero=Table[0,{i,1,cn}];
function layer
function layer
In[]:=
m11=Table[If[EvenQ[i],0,KroneckerDelta[j,(i+1)/2]],{i,1,cn},{j,1,n}];m22=Table[If[OddQ[i],0,KroneckerDelta[j,(i)/2]],{i,1,cn},{j,1,n}];
mybsun=FunctionLayer@Function@Block{x1,a1,imm,m,d,tbs,fibs,m1,m2,inv},m1=m11;m2=m22;tbs=NetArray["Array"->tbsi];fibs=NetArray["Array"->fibsi];m=m1.
.Transpose[m1]+m2.
.Transpose[m2]+m2.
.Transpose[m1]+m1.-
.Transpose[m2];d=zero;imm=Inverse[m];inv=imm;x1=#x.m;a1=Inverse[m].(d+#a);{x1,a1}
Cos[tbs[[1]]]Cos[fibs[[1]]] | -Sin[tbs[[1]]]Cos[fibs[[2]]] |
Sin[tbs[[1]]]Cos[fibs[[2]]] | Cos[tbs[[1]]]Cos[fibs[[1]]] |
Cos[tbs[[1]]]Cos[fibs[[1]]] | -Sin[tbs[[1]]]Cos[fibs[[2]]] |
Sin[tbs[[1]]]Cos[fibs[[2]]] | Cos[tbs[[1]]]Cos[fibs[[1]]] |
-Cos[tbs[[1]]]Sin[fibs[[1]]] | Sin[tbs[[1]]]Sin[fibs[[2]]] |
Sin[tbs[[1]]]Sin[fibs[[2]]] | Cos[tbs[[1]]]Sin[fibs[[1]]] |
-Cos[tbs[[1]]]Sin[fibs[[1]]] | Sin[tbs[[1]]]Sin[fibs[[2]]] |
Sin[tbs[[1]]]Sin[fibs[[2]]] | Cos[tbs[[1]]]Sin[fibs[[1]]] |
