In[]:=
phi={{0.01,0},{0.1,0},{0.2,-0.12566},{0.3,-0.1885},{0.5,-0.50265},{0.6,-0.62832},{0.9,-0.87965},{1,-1.00531},{2,-1.25664},{3,-1.3823},{4,-1.4},{5,-1.44513},{6,-1.50796},{7,-1.56}};​​function=y*x^8+h*x^7+a*x^6+b*x^5+c*x^4+z*x^3+e*x^2+f*x+j;​​fit=FindFit[phi,function,{y,h,a,b,c,z,e,f,j},x]​​function/.fit​​Show[LogLinearPlot[function/.fit,{x,10^-2,6},PlotRangeAll],ListLogLinearPlot[phi,PlotStyleBlack]];
Out[]=
{y-0.000449054,h0.01225,a-0.136251,b0.79377,c-2.57905,z4.535,e-3.57463,f-0.0581798,j0.0147036}
Out[]=
0.0147036-0.0581798x-3.57463
2
x
+4.535
3
x
-2.57905
4
x
+0.79377
5
x
-0.136251
6
x
+0.01225
7
x
-0.000449054
8
x
In[]:=
modul=4.6528*(1+((r*Sqrt[A])/0.711)^3.2396)^-0.6;​​complex=(function/.fit)/.x->r*Sqrt[A];​​​​g=modul*Exp[I*complex];
In[]:=
​​n=50;​​minA=10^-1;​​maxA=4;​​minr=Sqrt[1/(maxA)^2];​​maxr=Sqrt[1/(minA)^2];​​stepA=(maxA-minA)/(n-1);​​stepr=(maxr-minr)/(n-1);
matrice=Table[SetPrecision[g,20],{r,minr,maxr,stepr},{A,minA,maxA,stepA}];​​inverse=PseudoInverse[matrice];​​Dimensions[inverse]
Out[]=
{50,50}
​​
​
In[]:=
MatrixForm[inverse]
Out[]//MatrixForm=