1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 from math import sqrt
24
25
26
27
28
29
30
31
32
33
34
36 """Diffusional correlation times.
37
38 The correlation time is::
39
40 t0 = tm.
41 """
42
43 data.ti[0] = diff_data.params[0]
44
45
46
47
48
49
51 """Partial derivatives of the diffusional correlation times.
52
53 The tm partial derivatives are::
54
55 dt0
56 --- = 1.
57 dtm
58 """
59
60 data.dti[0] = 1.0
61
62
63
64
65
66
67
68
69
70
71
72
73
75 """Diffusional correlation times.
76
77 The equations for the parameters {Diso, Da} are::
78
79 t-1 = (6Diso - 2Da)**-1,
80
81 t0 = (6Diso - Da)**-1,
82
83 t1 = (6Diso + 2Da)**-1,
84
85 The diffusion parameter set in data.diff_params is {tm, Da, theta, phi}.
86 """
87
88
89 if diff_data.params[0] == 0.0:
90 data.inv_tm = 1e99
91 else:
92 data.inv_tm = 1.0 / diff_data.params[0]
93
94
95 data.tau_scale[0] = -2.0
96 data.tau_scale[1] = -1.0
97 data.tau_scale[2] = 2.0
98
99
100 data.tau_comps = data.inv_tm + data.tau_scale * diff_data.params[1]
101
102
103 if data.tau_comps[0] == 0.0:
104 data.tau_comps[0] = 1e99
105 else:
106 data.tau_comps[0] = 1.0 / data.tau_comps[0]
107
108
109 if data.tau_comps[1] == 0.0:
110 data.tau_comps[1] = 1e99
111 else:
112 data.tau_comps[1] = 1.0 / data.tau_comps[1]
113
114
115 if data.tau_comps[2] == 0.0:
116 data.tau_comps[2] = 1e99
117 else:
118 data.tau_comps[2] = 1.0 / data.tau_comps[2]
119
120
121 data.ti = 1.0 * data.tau_comps
122
123
124
125
126
127
129 """Diffusional correlation time gradients.
130
131 tm partial derivatives
132 ======================
133
134 The equations are::
135
136 dt-1 dDiso
137 ---- = -6 ----- (6Diso - 2Da)**-2,
138 dtm dtm
139
140 dt0 dDiso
141 --- = -6 ----- (6Diso - Da)**-2,
142 dtm dtm
143
144 dt1 dDiso
145 --- = -6 ----- (6Diso + 2Da)**-2.
146 dtm dtm
147
148
149 As::
150
151 dDiso
152 ----- = -1/6 * tm**-2,
153 dtm
154
155 the equations simplify to::
156
157 dt-1
158 ---- = tm**-2 (6Diso - 2Da)**-2,
159 dtm
160
161 dt0
162 --- = tm**-2 (6Diso - Da)**-2,
163 dtm
164
165 dt1
166 --- = tm**-2 (6Diso + 2Da)**-2.
167 dtm
168
169
170 Da partial derivatives
171 ======================
172
173 The equations are::
174
175 dt-1
176 ---- = 2(6Diso - 2Da)**-2,
177 dDa
178
179 dt0
180 --- = (6Diso - Da)**-2,
181 dDa
182
183 dt1
184 --- = -2(6Diso + 2Da)**-2.
185 dDa
186
187
188 The diffusion parameter set in data.diff_params is {tm, Da, theta, phi}.
189 """
190
191
192 data.tau_comps_sqrd = data.tau_comps**2
193 data.inv_tm_sqrd = data.inv_tm**2
194
195
196
197
198
199 data.dti[0] = data.inv_tm_sqrd * data.tau_comps_sqrd
200
201
202
203
204
205
206 data.tau_scale[0] = 2.0
207 data.tau_scale[1] = 1.0
208 data.tau_scale[2] = -2.0
209
210 data.dti[1] = data.tau_scale * data.tau_comps_sqrd
211
212
213
214
215
216
218 r"""Diffusional correlation time Hessians.
219
220 tm-tm partial derivatives
221 =========================
222
223 The equations are::
224
225 d2t-1 / dDiso \ 2 d2Diso
226 ----- = 72 | ----- | (6Diso - 2Da)**-3 - 6 ------ (6Diso - 2Da)**-2,
227 dtm2 \ dtm / dtm2
228
229 d2t0 / dDiso \ 2 d2Diso
230 ---- = 72 | ----- | (6Diso - Da)**-3 - 6 ------ (6Diso - Da)**-2,
231 dtm2 \ dtm / dtm2
232
233 d2t1 / dDiso \ 2 d2Diso
234 ---- = 72 | ----- | (6Diso + 2Da)**-3 - 6 ------ (6Diso + 2Da)**-2.
235 dtm2 \ dtm / dtm2
236
237
238 As::
239
240 d2Diso
241 ------ = 1/3 * tm**-3,
242 dtm2
243
244 and::
245
246 dDiso
247 ----- = -1/6 * tm**-2,
248 dtm
249
250 the equations simplify to::
251
252 d2t-1
253 ----- = 2tm**-4 (6Diso - 2Da)**-3 - 2tm**-3 (6Diso - 2Da)**-2,
254 dtm2
255
256 d2t0
257 ---- = 2tm**-4 (6Diso - Da)**-3 - 2tm**-3 (6Diso - Da)**-2,
258 dtm2
259
260 d2t1
261 ---- = 2tm**-4 (6Diso + 2Da)**-3 - 2tm**-3 (6Diso + 2Da)**-2.
262 dtm2
263
264
265 tm-Da partial derivatives
266 =========================
267
268 The equations are::
269
270 d2t-1 dDiso
271 ------- = -24 ----- (6Diso - 2Da)**-3,
272 dtm.dDa dtm
273
274 d2t0 dDiso
275 ------- = -12 ----- (6Diso - Da)**-3,
276 dtm.dDa dtm
277
278 d2t1 dDiso
279 ------- = 24 ----- (6Diso + 2Da)**-3.
280 dtm.dDa dtm
281
282 As::
283
284 dDiso
285 ----- = -1/6 * tm**-2,
286 dtm
287
288 the equations simplify to::
289
290 d2t-1
291 ------- = 4tm**-2 (6Diso - 2Da)**-3,
292 dtm.dDa
293
294 d2t0
295 ------- = 2tm**-2 (6Diso - Da)**-3,
296 dtm.dDa
297
298 d2t1
299 ------- = -4tm**-2 (6Diso + 2Da)**-3.
300 dtm.dDa
301
302
303
304 Da-Da partial derivatives
305 =========================
306
307 The equations are::
308
309 d2t-1
310 ----- = 8 (6Diso - 2Da)**-3,
311 dDa2
312
313 d2t0
314 ---- = 2 (6Diso - Da)**-3,
315 dDa2
316
317 d2t1
318 ---- = 8 (6Diso + 2Da)**-3.
319 dDa2
320
321
322 The diffusion parameter set in data.diff_params is {tm, Da, theta, phi}.
323 """
324
325
326 data.tau_comps_cubed = data.tau_comps**3
327
328
329
330
331
332 data.d2ti[0, 0] = 2.0 * data.inv_tm**3 * (data.inv_tm * data.tau_comps_cubed - data.tau_comps_sqrd)
333
334
335
336
337
338
339 data.tau_scale[0] = 4.0
340 data.tau_scale[1] = 2.0
341 data.tau_scale[2] = -4.0
342
343 data.d2ti[0, 1] = data.d2ti[1, 0] = data.tau_scale * data.inv_tm_sqrd * data.tau_comps_cubed
344
345
346
347
348
349
350 data.tau_scale[0] = 8.0
351 data.tau_scale[1] = 2.0
352 data.tau_scale[2] = 8.0
353
354 data.d2ti[1, 1] = data.tau_scale * data.tau_comps_cubed
355
356
357
358
359
360
361
362
363
364
365
366
367
369 r"""Diffusional correlation times.
370
371 The equations for the parameters {Diso, Da, Dr} are::
372
373 t-2 = (6Diso - 2DaR)**-1,
374
375 t-1 = (6Diso - Da(1 + 3Dr))**-1,
376
377 t0 = (6Diso - Da(1 - 3Dr))**-1,
378
379 t1 = (6Diso + 2Da)**-1,
380
381 t2 = (6Diso + 2DaR)**-1,
382
383 where::
384 __________
385 R = \/1 + 3Dr**2.
386
387 The diffusion parameter set in data.diff_params is {tm, Da, Dr, alpha, beta, gamma}.
388 """
389
390
391 if diff_data.params[0] == 0.0:
392 data.inv_tm = 1e99
393 else:
394 data.inv_tm = 1.0 / diff_data.params[0]
395
396
397 data.R = sqrt(1.0 + 3.0*diff_data.params[2]**2)
398
399
400 data.one_3Dr = 1.0 + 3.0 * diff_data.params[2]
401 data.one_m3Dr = 1.0 - 3.0 * diff_data.params[2]
402
403
404 data.tau_scale[0] = -2.0 * data.R
405 data.tau_scale[1] = -data.one_3Dr
406 data.tau_scale[2] = -data.one_m3Dr
407 data.tau_scale[3] = 2.0
408 data.tau_scale[4] = 2.0 * data.R
409
410
411 data.tau_comps = data.inv_tm + data.tau_scale * diff_data.params[1]
412
413
414 if data.tau_comps[0] == 0.0:
415 data.tau_comps[0] = 1e99
416 else:
417 data.tau_comps[0] = 1.0 / data.tau_comps[0]
418
419
420 if data.tau_comps[1] == 0.0:
421 data.tau_comps[1] = 1e99
422 else:
423 data.tau_comps[1] = 1.0 / data.tau_comps[1]
424
425
426 if data.tau_comps[2] == 0.0:
427 data.tau_comps[2] = 1e99
428 else:
429 data.tau_comps[2] = 1.0 / data.tau_comps[2]
430
431
432 if data.tau_comps[3] == 0.0:
433 data.tau_comps[3] = 1e99
434 else:
435 data.tau_comps[3] = 1.0 / data.tau_comps[3]
436
437
438 if data.tau_comps[4] == 0.0:
439 data.tau_comps[4] = 1e99
440 else:
441 data.tau_comps[4] = 1.0 / data.tau_comps[4]
442
443
444 data.ti = 1.0 * data.tau_comps
445
446
447
448
449
450
452 """Diffusional correlation time gradients.
453
454 tm partial derivatives
455 ======================
456
457 The equations are::
458
459 dt-2 dDiso
460 ---- = - 6 ----- (6Diso - 2DaR)**-2,
461 dtm dtm
462
463 dt-1 dDiso
464 ---- = - 6 ----- (6Diso - Da(1 + 3Dr))**-2,
465 dtm dtm
466
467 dt0 dDiso
468 --- = - 6 ----- (6Diso - Da(1 - 3Dr))**-2,
469 dtm dtm
470
471 dt1 dDiso
472 --- = - 6 ----- (6Diso + 2Da)**-2,
473 dtm dtm
474
475 dt2 dDiso
476 --- = - 6 ----- (6Diso + 2DaR)**-2.
477 dtm dtm
478
479
480 As::
481
482 dDiso
483 ----- = -1/6 * tm**-2,
484 dtm
485
486 the equations simplify to::
487
488 dt-2
489 ---- = tm**-2 (6Diso - 2DaR)**-2,
490 dtm
491
492 dt-1
493 ---- = tm**-2 (6Diso - Da(1 + 3Dr))**-2,
494 dtm
495
496 dt0
497 --- = tm**-2 (6Diso - Da(1 - 3Dr))**-2,
498 dtm
499
500 dt1
501 --- = tm**-2 (6Diso + 2Da)**-2,
502 dtm
503
504 dt2
505 --- = tm**-2 (6Diso + 2DaR)**-2.
506 dtm
507
508
509 Da partial derivatives
510 ======================
511
512 The equations are::
513
514 dt-2
515 ---- = 2R (6Diso - 2DaR)**-2,
516 dDa
517
518 dt-1
519 ---- = (1 + 3Dr) (6Diso - Da(1 + 3Dr))**-2,
520 dDa
521
522 dt0
523 --- = (1 - 3Dr) (6Diso - Da(1 - 3Dr))**-2,
524 dDa
525
526 dt1
527 --- = -2 (6Diso + 2Da)**-2,
528 dDa
529
530 dt2
531 --- = -2R (6Diso + 2DaR)**-2.
532 dDa
533
534
535 Dr partial derivatives
536 ======================
537
538 The equations are::
539
540 dt-2
541 ---- = 6 Da.Dr/R (6Diso - 2DaR)**-2,
542 dDr
543
544 dt-1
545 ---- = 3Da (6Diso - Da(1 + 3Dr))**-2,
546 dDr
547
548 dt0
549 --- = -3Da (6Diso - Da(1 - 3Dr))**-2,
550 dDr
551
552 dt1
553 --- = 0,
554 dDr
555
556 dt2
557 --- = -6 Da.Dr/R (6Diso + 2DaR)**-2.
558 dDr
559
560 The diffusion parameter set in data.diff_params is {tm, Da, Dr, alpha, beta, gamma}.
561 """
562
563
564 data.tau_comps_sqrd = data.tau_comps**2
565 data.inv_tm_sqrd = data.inv_tm**2
566 data.sixDaDrR = 6.0 * diff_data.params[1] * diff_data.params[2] / data.R
567
568
569
570
571
572 data.dti[0] = data.inv_tm_sqrd * data.tau_comps_sqrd
573
574
575
576
577
578
579 data.tau_scale[0] = 2.0 * data.R
580 data.tau_scale[1] = data.one_3Dr
581 data.tau_scale[2] = data.one_m3Dr
582 data.tau_scale[3] = -2.0
583 data.tau_scale[4] = -2.0 * data.R
584
585 data.dti[1] = data.tau_scale * data.tau_comps_sqrd
586
587
588
589
590
591
592 data.tau_scale[0] = data.sixDaDrR
593 data.tau_scale[1] = 3.0 * diff_data.params[1]
594 data.tau_scale[2] = -3.0 * diff_data.params[1]
595 data.tau_scale[3] = 0.0
596 data.tau_scale[4] = -data.sixDaDrR
597
598 data.dti[2] = data.tau_scale * data.tau_comps_sqrd
599
600
601
602
603
604
606 r"""Diffusional correlation time Hessians.
607
608 tm-tm partial derivatives
609 =========================
610
611 The equations are::
612
613 d2t-2 / dDiso \ 2 d2Diso
614 ----- = 72 | ----- | (6Diso - 2DaR)**-3 - 6 ------ (6Diso - 2DaR)**-2,
615 dtm2 \ dtm / dtm2
616
617 d2t-1 / dDiso \ 2 d2Diso
618 ----- = 72 | ----- | (6Diso - Da(1 + 3Dr))**-3 - 6 ------ (6Diso - Da(1 + 3Dr))**-2,
619 dtm2 \ dtm / dtm2
620
621 d2t0 / dDiso \ 2 d2Diso
622 ---- = 72 | ----- | (6Diso - Da(1 - 3Dr))**-3 - 6 ------ (6Diso - Da(1 - 3Dr))**-2,
623 dtm2 \ dtm / dtm2
624
625 d2t1 / dDiso \ 2 d2Diso
626 ---- = 72 | ----- | (6Diso + 2Da)**-3 - 6 ------ (6Diso + 2Da)**-2,
627 dtm2 \ dtm / dtm2
628
629 d2t2 / dDiso \ 2 d2Diso
630 ---- = 72 | ----- | (6Diso + 2DaR)**-3 - 6 ------ (6Diso + 2DaR)**-2.
631 dtm2 \ dtm / dtm2
632
633 As::
634
635 d2Diso
636 ------ = 1/3 * tm**-3,
637 dtm2
638
639 and::
640
641 dDiso
642 ----- = -1/6 * tm**-2,
643 dtm
644
645 the equations simplify to::
646
647 d2t-2
648 ----- = 2tm**-4 (6Diso - 2DaR)**-3 - 2tm**-3 (6Diso - 2DaR)**-2,
649 dtm2
650
651 d2t-1
652 ----- = 2tm**-4 (6Diso - Da(1 + 3Dr))**-3 - 2tm**-3 (6Diso - Da(1 + 3Dr))**-2,
653 dtm2
654
655 d2t0
656 ---- = 2tm**-4 (6Diso - Da(1 - 3Dr))**-3 - 2tm**-3 (6Diso - Da(1 - 3Dr))**-2,
657 dtm2
658
659 d2t1
660 ---- = 2tm**-4 (6Diso + 2Da)**-3 - 2tm**-3 (6Diso + 2Da)**-2,
661 dtm2
662
663 d2t2
664 ---- = 2tm**-4 (6Diso + 2DaR)**-3 - 2tm**-3 (6Diso + 2DaR)**-2.
665 dtm2
666
667
668
669 tm-Da partial derivatives
670 =========================
671
672 The equations are::
673
674 d2t-2 dDiso
675 ------- = -24R ----- (6Diso - 2DaR)**-3,
676 dtm.dDa dtm
677
678 d2t-1 dDiso
679 ------- = -12(1 + 3Dr) ----- (6Diso - Da(1 + 3Dr))**-3,
680 dtm.dDa dtm
681
682 d2t0 dDiso
683 ------- = -12(1 - 3Dr) ----- (6Diso - Da(1 - 3Dr))**-3,
684 dtm.dDa dtm
685
686 d2t1 dDiso
687 ------- = 24 ----- (6Diso + 2Da)**-3,
688 dtm.dDa dtm
689
690 d2t2 dDiso
691 ------- = 24R ----- (6Diso + 2DaR)**-3.
692 dtm.dDa dtm
693
694 As::
695
696 dDiso
697 ----- = -1/6 * tm**-2,
698 dtm
699
700 the equations simplify to::
701
702 d2t-2
703 ------- = 4R tm**-2 (6Diso - 2DaR)**-3,
704 dtm.dDa
705
706 d2t-1
707 ------- = 2(1 + 3Dr) tm**-2 (6Diso - Da(1 + 3Dr))**-3,
708 dtm.dDa
709
710 d2t0
711 ------- = 2(1 - 3Dr) tm**-2 (6Diso - Da(1 - 3Dr))**-3,
712 dtm.dDa
713
714 d2t1
715 ------- = -4 tm**-2 (6Diso + 2Da)**-3,
716 dtm.dDa
717
718 d2t2
719 ------- = -4R tm**-2 (6Diso + 2DaR)**-3.
720 dtm.dDa
721
722
723 tm-Dr partial derivatives
724 =========================
725
726 The equations are::
727
728 d2t-2 dDiso
729 ------- = -72 Da.Dr/R ----- (6Diso - 2DaR)**-3,
730 dtm.dDr dtm
731
732 d2t-1 dDiso
733 ------- = -36 Da ----- (6Diso - Da(1 + 3Dr))**-3,
734 dtm.dDr dtm
735
736 d2t0 dDiso
737 ------- = 36 Da ----- (6Diso - Da(1 - 3Dr))**-3,
738 dtm.dDr dtm
739
740 d2t1
741 ------- = 0,
742 dtm.dDr
743
744 d2t2 dDiso
745 ------- = 72 Da.Dr/R ----- (6Diso + 2DaR)**-3.
746 dtm.dDr dtm
747
748 As::
749
750 dDiso
751 ----- = -1/6 * tm**-2,
752 dtm
753
754 the equations simplify to::
755
756 d2t-2
757 ------- = 12 Da.Dr/R tm**-2 (6Diso - 2DaR)**-3,
758 dtm.dDr
759
760 d2t-1
761 ------- = 6 Da tm**-2 (6Diso - Da(1 + 3Dr))**-3,
762 dtm.dDr
763
764 d2t0
765 ------- = -6 Da tm**-2 (6Diso - Da(1 - 3Dr))**-3,
766 dtm.dDr
767
768 d2t1
769 ------- = 0,
770 dtm.dDr
771
772 d2t2
773 ------- = -12 Da.Dr/R tm**-2 (6Diso + 2DaR)**-3.
774 dtm.dDr
775
776
777 Da-Da partial derivatives
778 =========================
779
780 The equations are::
781
782 d2t-2
783 ----- = 8R**2 (6Diso - 2DaR)**-3,
784 dDa2
785
786 d2t-1
787 ----- = 2(1 + 3Dr)**2 (6Diso - Da(1 + 3Dr))**-3,
788 dDa2
789
790 d2t0
791 ---- = 2(1 - 3Dr)**2 (6Diso - Da(1 - 3Dr))**-3,
792 dDa2
793
794 d2t1
795 ---- = 8(6Diso + 2Da)**-3,
796 dDa2
797
798 d2t2
799 ---- = 8R**2 (6Diso + 2DaR)**-3.
800 dDa2
801
802
803 Da-Dr partial derivatives
804 =========================
805
806 The equations are::
807
808 d2t-2
809 ------- = 24Da.Dr (6Diso - 2DaR)**-3 + 6Dr/R (6Diso - 2DaR)**-2,
810 dDa.dDr
811
812 d2t-1
813 ------- = 6Da (1 + 3Dr)(6Diso - Da(1 + 3Dr))**-3 + 3(6Diso - Da(1 + 3Dr))**-2,
814 dDa.dDr
815
816 d2t0
817 ------- = -6Da (1 - 3Dr)(6Diso - Da(1 - 3Dr))**-3 - 3(6Diso - Da(1 - 3Dr))**-2,
818 dDa.dDr
819
820 d2t1
821 ------- = 0,
822 dDa.dDr
823
824 d2t2
825 ------- = 24Da.Dr (6Diso + 2DaR)**-3 - 6Dr/R (6Diso + 2DaR)**-2.
826 dDa.dDr
827
828
829 Dr-Dr partial derivatives
830 =========================
831
832 The equations are::
833
834 d2t-2
835 ----- = 72(Da.Dr/R)**2 (6Diso - 2DaR)**-3 + 6Da/R**3 (6Diso - 2DaR)**-2,
836 dDr2
837
838 d2t-1
839 ----- = 18Da**2 (6Diso - Da(1 + 3Dr))**-3,
840 dDr2
841
842 d2t0
843 ---- = 18Da**2 (6Diso - Da(1 - 3Dr))**-3,
844 dDr2
845
846 d2t1
847 ---- = 0,
848 dDr2
849
850 d2t2
851 ---- = 72(Da.Dr/R)**2 (6Diso + 2DaR)**-3 - 6Da/R**3 (6Diso + 2DaR)**-2.
852 dDr2
853
854
855 The diffusion parameter set in data.diff_params is {tm, Da, Dr, alpha, beta, gamma}.
856 """
857
858
859 data.tau_comps_cubed = data.tau_comps**3
860
861
862
863
864
865 data.d2ti[0, 0] = 2.0 * data.inv_tm**3 * (data.inv_tm * data.tau_comps_cubed - data.tau_comps_sqrd)
866
867
868
869
870
871
872 data.tau_scale[0] = 2.0 * data.R
873 data.tau_scale[1] = data.one_3Dr
874 data.tau_scale[2] = data.one_m3Dr
875 data.tau_scale[3] = -2.0
876 data.tau_scale[4] = -2.0 * data.R
877
878 data.d2ti[0, 1] = data.d2ti[1, 0] = 2.0 * data.tau_scale * data.inv_tm_sqrd * data.tau_comps_cubed
879
880
881
882
883
884
885 data.tau_scale[0] = data.sixDaDrR
886 data.tau_scale[1] = 3.0 * diff_data.params[1]
887 data.tau_scale[2] = -3.0 * diff_data.params[1]
888 data.tau_scale[3] = 0.0
889 data.tau_scale[4] = -data.sixDaDrR
890
891 data.d2ti[0, 2] = data.d2ti[2, 0] = 2.0 * data.tau_scale * data.inv_tm_sqrd * data.tau_comps_cubed
892
893
894
895
896
897
898 data.tau_scale[0] = 2.0 * data.R
899 data.tau_scale[1] = data.one_3Dr
900 data.tau_scale[2] = data.one_m3Dr
901 data.tau_scale[3] = 2.0
902 data.tau_scale[4] = 2.0 * data.R
903
904 data.d2ti[1, 1] = 2.0 * data.tau_scale**2 * data.tau_comps_cubed
905
906
907
908
909
910
911 data.tau_scale[0] = 4.0 * diff_data.params[2]
912 data.tau_scale[1] = data.one_3Dr
913 data.tau_scale[2] = -data.one_m3Dr
914 data.tau_scale[3] = 0.0
915 data.tau_scale[4] = 4.0 * diff_data.params[2]
916
917 data.d2ti[1, 2] = 6.0 * diff_data.params[1] * data.tau_scale * data.tau_comps_cubed
918
919
920 data.tau_scale[0] = 6.0 * diff_data.params[2] / data.R
921 data.tau_scale[1] = 3.0
922 data.tau_scale[2] = -3.0
923 data.tau_scale[3] = 0.0
924 data.tau_scale[4] = -6.0 * diff_data.params[2] / data.R
925
926 data.d2ti[1, 2] = data.d2ti[2, 1] = data.d2ti[1, 2] + data.tau_scale * data.tau_comps_sqrd
927
928
929
930
931
932
933 data.tau_scale[0] = data.sixDaDrR
934 data.tau_scale[1] = 3.0 * diff_data.params[1]
935 data.tau_scale[2] = 3.0 * diff_data.params[1]
936 data.tau_scale[3] = 0.0
937 data.tau_scale[4] = data.sixDaDrR
938
939 data.d2ti[2, 2] = 2.0 * data.tau_scale**2 * data.tau_comps_cubed
940
941
942 data.tau_scale[0] = 1.0
943 data.tau_scale[1] = 0.0
944 data.tau_scale[2] = 0.0
945 data.tau_scale[3] = 0.0
946 data.tau_scale[4] = -1.0
947
948 try:
949 data.R_cubed = data.R**3
950 except OverflowError:
951 data.R_cubed = 1e99
952 data.d2ti[2, 2] = data.d2ti[2, 2] + 6.0 * diff_data.params[1] / data.R_cubed * data.tau_scale * data.tau_comps_sqrd
953