Fix saving lists of arrays with recent versions of numpy
[qpms.git] / notes / BesselTFq3n0test.nb
bloba61fe67457bc210fc02656159dbdcaac8024c548
1 (* Content-type: application/vnd.wolfram.mathematica *)
3 (*** Wolfram Notebook File ***)
4 (* http://www.wolfram.com/nb *)
6 (* CreatedBy='Mathematica 10.0' *)
8 (*CacheID: 234*)
9 (* Internal cache information:
10 NotebookFileLineBreakTest
11 NotebookFileLineBreakTest
12 NotebookDataPosition[       158,          7]
13 NotebookDataLength[     11519,        371]
14 NotebookOptionsPosition[     10578,        333]
15 NotebookOutlinePosition[     10914,        348]
16 CellTagsIndexPosition[     10871,        345]
17 WindowFrame->Normal*)
19 (* Beginning of Notebook Content *)
20 Notebook[{
21 Cell[BoxData[{
22  RowBox[{
23   RowBox[{"rho", "[", 
24    RowBox[{"r_", ",", "c_", ",", "kap_"}], "]"}], ":=", 
25   RowBox[{
26    RowBox[{"(", 
27     RowBox[{"1", "-", 
28      RowBox[{"Exp", "[", 
29       RowBox[{
30        RowBox[{"-", "c"}], " ", "r"}], "]"}]}], ")"}], "^", "kap"}]}], "\n", 
31  RowBox[{
32   RowBox[{"s", "[", 
33    RowBox[{"r_", ",", "k0_", ",", "q_"}], "]"}], ":=", 
34   RowBox[{
35    RowBox[{"Exp", "[", 
36     RowBox[{"I", " ", "k0", " ", "r"}], "]"}], " ", 
37    RowBox[{
38     RowBox[{"(", 
39      RowBox[{"k0", " ", "r"}], ")"}], "^", 
40     RowBox[{"(", 
41      RowBox[{"-", "q"}], ")"}]}]}]}], "\n", 
42  RowBox[{
43   RowBox[{
44    RowBox[{"integrand", "[", 
45     RowBox[{
46     "r_", ",", "k_", ",", "k0_", ",", "c_", ",", "kap_", ",", "q_", ",", 
47      "n_"}], "]"}], ":=", 
48    RowBox[{
49     RowBox[{"rho", "[", 
50      RowBox[{"r", ",", "c", ",", "kap"}], "]"}], " ", 
51     RowBox[{"s", "[", 
52      RowBox[{"r", ",", "k0", ",", "q"}], "]"}], " ", "r", " ", 
53     RowBox[{"BesselJ", "[", 
54      RowBox[{"n", ",", 
55       RowBox[{"k", " ", "r"}]}], "]"}]}]}], 
56   "\[IndentingNewLine]"}], "\[IndentingNewLine]", 
57  RowBox[{
58   RowBox[{"Lsum30", "[", 
59    RowBox[{"kap_", ",", "c_", ",", "k0_", ",", "k_"}], "]"}], ":=", 
60   RowBox[{"Sum", "[", 
61    RowBox[{
62     RowBox[{
63      RowBox[{"(", 
64       RowBox[{
65        RowBox[{
66         RowBox[{"(", 
67          RowBox[{"-", "1"}], ")"}], "^", 
68         RowBox[{"(", 
69          RowBox[{"1", "+", "sig"}], ")"}]}], "*", 
70        RowBox[{"(", 
71         RowBox[{
72          RowBox[{"k", "*", 
73           RowBox[{"Sqrt", "[", 
74            RowBox[{
75             RowBox[{"(", 
76              RowBox[{
77               RowBox[{"k", "^", "2"}], "-", 
78               RowBox[{
79                RowBox[{"(", 
80                 RowBox[{"k0", "+", 
81                  RowBox[{"I", "*", "c", "*", "sig"}]}], ")"}], "^", "2"}]}], 
82              ")"}], "/", 
83             RowBox[{"k", "^", "2"}]}], "]"}]}], "+", 
84          RowBox[{
85           RowBox[{"(", 
86            RowBox[{"k0", "+", 
87             RowBox[{"I", "*", "c", "*", "sig"}]}], ")"}], "*", 
88           RowBox[{"ArcSin", "[", 
89            RowBox[{
90             RowBox[{"(", 
91              RowBox[{"k0", "+", 
92               RowBox[{"I", "*", "c", "*", "sig"}]}], ")"}], "/", "k"}], 
93            "]"}]}]}], ")"}], "*", 
94        RowBox[{"Binomial", "[", 
95         RowBox[{"kap", ",", "sig"}], "]"}]}], ")"}], "/", 
96      RowBox[{"k0", "^", "3"}]}], ",", 
97     RowBox[{"{", 
98      RowBox[{"sig", ",", "0", ",", "kap"}], "}"}]}], 
99    "]"}]}], "\[IndentingNewLine]", 
100  RowBox[{
101   RowBox[{"Nint30", "[", 
102    RowBox[{"kap_", ",", "c_", ",", "k0_", ",", "k_"}], "]"}], ":=", 
103   RowBox[{"NIntegrate", "[", 
104    RowBox[{
105     RowBox[{"integrand", "[", 
106      RowBox[{
107      "r", ",", "k", ",", "k0", ",", "c", ",", "kap", ",", "3", ",", "0"}], 
108      "]"}], ",", 
109     RowBox[{"{", 
110      RowBox[{"r", ",", "0", ",", "Infinity"}], "}"}]}], 
111    "]"}]}], "\[IndentingNewLine]", 
112  RowBox[{
113   RowBox[{"Lsum30relerror", "[", 
114    RowBox[{"kappa_", ",", "c_", ",", "k0_", ",", "k_"}], "]"}], ":=", 
115   RowBox[{"Abs", "[", 
116    RowBox[{
117     RowBox[{"(", 
118      RowBox[{
119       RowBox[{"NIntegrate", "[", 
120        RowBox[{
121         RowBox[{"integrand", "[", 
122          RowBox[{
123          "r", ",", "k", ",", "k0", ",", "c", ",", "kappa", ",", "3", ",", 
124           "0"}], "]"}], ",", 
125         RowBox[{"{", 
126          RowBox[{"r", ",", "0", ",", "Infinity"}], "}"}]}], "]"}], "-", 
127       RowBox[{"Lsum30", "[", 
128        RowBox[{"kappa", ",", "c", ",", "k0", ",", "k"}], "]"}]}], ")"}], "/", 
129     
130     RowBox[{"Lsum30", "[", 
131      RowBox[{"kappa", ",", "c", ",", "k0", ",", "k"}], "]"}]}], 
132    "]"}]}]}], "Input",
133  CellChangeTimes->{{3.725113471451489*^9, 3.725113518541342*^9}, 
134    3.72511361142743*^9, {3.7251136649255037`*^9, 3.725113665100748*^9}, 
135    3.725113940122211*^9, {3.72511397606431*^9, 3.725114004686063*^9}, {
136    3.7251140520462313`*^9, 3.725114052164033*^9}}],
138 Cell[CellGroupData[{
140 Cell[BoxData[
141  RowBox[{"Lsum30relerror", "[", 
142   RowBox[{"6", ",", "0.1", ",", "1", ",", "1.1"}], "]"}]], "Input",
143  CellChangeTimes->{{3.7251136200622*^9, 3.7251136322203493`*^9}}],
145 Cell[BoxData["6.70650792232631`*^-12"], "Output",
146  CellChangeTimes->{3.725113638647744*^9, 3.7251136705456123`*^9, 
147   3.725113945893931*^9}]
148 }, Open  ]],
150 Cell[CellGroupData[{
152 Cell[BoxData[
153  RowBox[{"Lsum30relerror", "[", 
154   RowBox[{"2", ",", "0.1", ",", "1.8", ",", "0.7"}], "]"}]], "Input",
155  CellChangeTimes->{{3.725113688094325*^9, 3.72511371089297*^9}, {
156   3.725113953012788*^9, 3.725113957835388*^9}}],
158 Cell[BoxData["0.9975419499206724`"], "Output",
159  CellChangeTimes->{{3.725113689091052*^9, 3.725113711464198*^9}, {
160   3.72511394863025*^9, 3.725113958377577*^9}}]
161 }, Open  ]],
163 Cell[CellGroupData[{
165 Cell[BoxData[
166  RowBox[{"Lsum30", "[", 
167   RowBox[{"2", ",", "0.1", ",", "1.8", ",", "0.7"}], "]"}]], "Input",
168  CellChangeTimes->{{3.7251140122908077`*^9, 3.725114027355405*^9}, {
169   3.7251140719110518`*^9, 3.72511408374263*^9}}],
171 Cell[BoxData[
172  RowBox[{"0.00006715230791048965`", "\[VeryThinSpace]", "+", 
173   RowBox[{"0.41841799501968396`", " ", "\[ImaginaryI]"}]}]], "Output",
174  CellChangeTimes->{
175   3.7251140276493177`*^9, {3.725114072392956*^9, 3.7251140841186037`*^9}}]
176 }, Open  ]],
178 Cell[CellGroupData[{
180 Cell[BoxData[
181  RowBox[{"Nint30", "[", 
182   RowBox[{"2", ",", "0.1", ",", "1.8", ",", "0.7"}], "]"}]], "Input",
183  CellChangeTimes->{{3.72511403724128*^9, 3.725114037839789*^9}, {
184   3.725114078108095*^9, 3.725114082476921*^9}}],
186 Cell[BoxData[
187  RowBox[{"0.00006715230791033052`", "\[VeryThinSpace]", "+", 
188   RowBox[{"0.0010284870104265479`", " ", "\[ImaginaryI]"}]}]], "Output",
189  CellChangeTimes->{{3.72511403840551*^9, 3.725114086040118*^9}}]
190 }, Open  ]],
192 Cell[CellGroupData[{
194 Cell[BoxData[
195  RowBox[{"Sum", "[", 
196   RowBox[{
197    RowBox[{
198     RowBox[{"(", 
199      RowBox[{
200       RowBox[{
201        RowBox[{"(", 
202         RowBox[{"-", "1"}], ")"}], "^", 
203        RowBox[{"(", 
204         RowBox[{"1", "+", "sig"}], ")"}]}], "*", 
205       RowBox[{"(", 
206        RowBox[{
207         RowBox[{"k", "*", 
208          RowBox[{"Sqrt", "[", 
209           RowBox[{
210            RowBox[{"(", 
211             RowBox[{
212              RowBox[{"k", "^", "2"}], "-", 
213              RowBox[{
214               RowBox[{"(", 
215                RowBox[{"k0", "+", 
216                 RowBox[{"I", "*", "c", "*", "sig"}]}], ")"}], "^", "2"}]}], 
217             ")"}], "/", 
218            RowBox[{"k", "^", "2"}]}], "]"}]}], "+", 
219         RowBox[{
220          RowBox[{"(", 
221           RowBox[{"k0", "+", 
222            RowBox[{"I", "*", "c", "*", "sig"}]}], ")"}], "*", 
223          RowBox[{"ArcSin", "[", 
224           RowBox[{
225            RowBox[{"(", 
226             RowBox[{"k0", "+", 
227              RowBox[{"I", "*", "c", "*", "sig"}]}], ")"}], "/", "k"}], 
228           "]"}]}]}], ")"}], "*", 
229       RowBox[{"Binomial", "[", 
230        RowBox[{"kap", ",", "sig"}], "]"}]}], ")"}], "/", 
231     RowBox[{"k0", "^", "3"}]}], ",", 
232    RowBox[{"{", 
233     RowBox[{"sig", ",", "0", ",", "kap"}], "}"}]}], "]"}]], "Input",
234  CellChangeTimes->{{3.725113829800209*^9, 3.725113829800631*^9}}],
236 Cell[BoxData[
237  RowBox[{
238   UnderoverscriptBox["\[Sum]", 
239    RowBox[{"sig", "=", "0"}], "kap"], 
240   FractionBox[
241    RowBox[{
242     SuperscriptBox[
243      RowBox[{"(", 
244       RowBox[{"-", "1"}], ")"}], 
245      RowBox[{"1", "+", "sig"}]], " ", 
246     RowBox[{"(", 
247      RowBox[{
248       RowBox[{"k", " ", 
249        SqrtBox[
250         FractionBox[
251          RowBox[{
252           SuperscriptBox["k", "2"], "-", 
253           SuperscriptBox[
254            RowBox[{"(", 
255             RowBox[{"k0", "+", 
256              RowBox[{"\[ImaginaryI]", " ", "c", " ", "sig"}]}], ")"}], "2"]}], 
257          SuperscriptBox["k", "2"]]]}], "+", 
258       RowBox[{
259        RowBox[{"(", 
260         RowBox[{"k0", "+", 
261          RowBox[{"\[ImaginaryI]", " ", "c", " ", "sig"}]}], ")"}], " ", 
262        RowBox[{"ArcSin", "[", 
263         FractionBox[
264          RowBox[{"k0", "+", 
265           RowBox[{"\[ImaginaryI]", " ", "c", " ", "sig"}]}], "k"], "]"}]}]}], 
266      ")"}], " ", 
267     RowBox[{"Binomial", "[", 
268      RowBox[{"kap", ",", "sig"}], "]"}]}], 
269    SuperscriptBox["k0", "3"]]}]], "Output",
270  CellChangeTimes->{3.7251138695080853`*^9}]
271 }, Open  ]],
273 Cell[BoxData[
274  RowBox[{
275   RowBox[{"Lsum30alt", "[", 
276    RowBox[{"kap_", ",", "c_", ",", "k0_", ",", "k_"}], "]"}], ":=", 
277   RowBox[{"Sum", "[", 
278    RowBox[{
279     RowBox[{
280      RowBox[{"(", 
281       RowBox[{
282        RowBox[{
283         RowBox[{"(", 
284          RowBox[{"-", "1"}], ")"}], "^", 
285         RowBox[{"(", 
286          RowBox[{"1", "+", "sig"}], ")"}]}], "*", 
287        RowBox[{"(", 
288         RowBox[{
289          RowBox[{"k", "*", 
290           RowBox[{"Sqrt", "[", 
291            RowBox[{
292             RowBox[{"(", 
293              RowBox[{
294               RowBox[{"k", "^", "2"}], "-", 
295               RowBox[{
296                RowBox[{"(", 
297                 RowBox[{"k0", "+", 
298                  RowBox[{"I", "*", "c", "*", "sig"}]}], ")"}], "^", "2"}]}], 
299              ")"}], "/", 
300             RowBox[{"k", "^", "2"}]}], "]"}]}], "+", 
301          RowBox[{
302           RowBox[{"(", 
303            RowBox[{"k0", "+", 
304             RowBox[{"I", "*", "c", "*", "sig"}]}], ")"}], "*", 
305           RowBox[{"(", 
306            RowBox[{
307             RowBox[{"ArcSin", "[", 
308              RowBox[{
309               RowBox[{"(", 
310                RowBox[{"k0", "+", 
311                 RowBox[{"I", "*", "c", "*", "sig"}]}], ")"}], "/", "k"}], 
312              "]"}], "+", 
313             RowBox[{"I", "*", "Pi"}]}], ")"}]}]}], ")"}], "*", 
314        RowBox[{"Binomial", "[", 
315         RowBox[{"kap", ",", "sig"}], "]"}]}], ")"}], "/", 
316      RowBox[{"k0", "^", "3"}]}], ",", 
317     RowBox[{"{", 
318      RowBox[{"sig", ",", "0", ",", "kap"}], "}"}]}], "]"}]}]], "Input",
319  CellChangeTimes->{{3.725114285602276*^9, 3.725114340572805*^9}}],
321 Cell[CellGroupData[{
323 Cell[BoxData[
324  RowBox[{"Lsum30alt", "[", 
325   RowBox[{"2", ",", "0.1", ",", "1.8", ",", "0.7"}], "]"}]], "Input",
326  CellChangeTimes->{{3.7251143362072897`*^9, 3.725114336572289*^9}}],
328 Cell[BoxData[
329  RowBox[{"0.00006715230791043414`", "\[VeryThinSpace]", "+", 
330   RowBox[{"0.4184179950196838`", " ", "\[ImaginaryI]"}]}]], "Output",
331  CellChangeTimes->{3.725114342830419*^9}]
332 }, Open  ]]
334 WindowSize->{1280, 758},
335 WindowMargins->{{0, Automatic}, {Automatic, 0}},
336 FrontEndVersion->"10.0 for Linux x86 (64-bit) (December 4, 2014)",
337 StyleDefinitions->"Default.nb"
339 (* End of Notebook Content *)
341 (* Internal cache information *)
342 (*CellTagsOutline
343 CellTagsIndex->{}
345 (*CellTagsIndex
346 CellTagsIndex->{}
348 (*NotebookFileOutline
349 Notebook[{
350 Cell[558, 20, 3847, 115, 231, "Input"],
351 Cell[CellGroupData[{
352 Cell[4430, 139, 180, 3, 32, "Input"],
353 Cell[4613, 144, 140, 2, 34, "Output"]
354 }, Open  ]],
355 Cell[CellGroupData[{
356 Cell[4790, 151, 230, 4, 32, "Input"],
357 Cell[5023, 157, 160, 2, 32, "Output"]
358 }, Open  ]],
359 Cell[CellGroupData[{
360 Cell[5220, 164, 226, 4, 32, "Input"],
361 Cell[5449, 170, 241, 4, 32, "Output"]
362 }, Open  ]],
363 Cell[CellGroupData[{
364 Cell[5727, 179, 222, 4, 32, "Input"],
365 Cell[5952, 185, 213, 3, 32, "Output"]
366 }, Open  ]],
367 Cell[CellGroupData[{
368 Cell[6202, 193, 1309, 40, 55, "Input"],
369 Cell[7514, 235, 1072, 34, 94, "Output"]
370 }, Open  ]],
371 Cell[8601, 272, 1567, 46, 99, "Input"],
372 Cell[CellGroupData[{
373 Cell[10193, 322, 179, 3, 32, "Input"],
374 Cell[10375, 327, 187, 3, 32, "Output"]
375 }, Open  ]]
380 (* End of internal cache information *)