Lemma is an Electromagnetics API
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

FastCosTransformAnderson.cpp 21KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448
  1. /* This file is part of Lemma, a geophysical modelling and inversion API */
  2. /* This Source Code Form is subject to the terms of the Mozilla Public
  3. * License, v. 2.0. If a copy of the MPL was not distributed with this
  4. * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  5. /**
  6. @file
  7. @author M. Andy Kass and Trevor P. Irons
  8. @date 02/07/2011
  9. 16 Dec. 2018
  10. **/
  11. #include "FastCosTransformAnderson.h"
  12. namespace Lemma {
  13. // ==================== FRIENDS =======================
  14. std::ostream &operator<<(std::ostream &stream,
  15. const FastCosTransformAnderson &ob) {
  16. stream << *(DigitalFilterIntegratorAnderson<Real>*)(&ob);
  17. return stream;
  18. }
  19. // ==================== LIFECYCLE =======================
  20. FastCosTransformAnderson::FastCosTransformAnderson(const ctor_key& key) :
  21. DigitalFilterIntegratorAnderson<Real>(key) {
  22. SetFilterWeights();
  23. NumConv = 1;
  24. ilow = 425;
  25. ihi = 460;
  26. ABSCISSA = 0.7866057737580476;
  27. //IntKernel = CosTransIntegrationKernel::New();
  28. }
  29. FastCosTransformAnderson::~FastCosTransformAnderson() {
  30. }
  31. std::shared_ptr<FastCosTransformAnderson> FastCosTransformAnderson::NewSP() {
  32. return std::make_shared< FastCosTransformAnderson > ( ctor_key() );
  33. }
  34. // ==================== OPERATIONS =======================
  35. void FastCosTransformAnderson::SetFilterWeights() {
  36. FilterWeights.resize(787);
  37. Key.resize(787);
  38. Work.resize(787, NumRel);
  39. this->FilterWeights <<
  40. 7.214369775966785E-20, 5.997984537445829E-20,
  41. 1.383536819510307E-20, 6.127201193993877E-20,
  42. 2.735622069700930E-20, 6.567948836420383E-20,
  43. 4.144963335850363E-20, 7.316414067200350E-20,
  44. 5.682375914662966E-20, 8.391977074915078E-20,
  45. 7.418756524583309E-20, 9.829637687190485E-20,
  46. 9.430643800653847E-20, 1.168146262188112E-19,
  47. 1.180370735968097E-19, 1.401723019040171E-19,
  48. 1.463726071463266E-19, 1.692722072070252E-19,
  49. 1.804796158499069E-19, 2.052560499147526E-19,
  50. 2.217507732438609E-19, 2.495469564846162E-19,
  51. 2.718603842873614E-19, 3.039069705922034E-19,
  52. 3.328334008394297E-19, 3.705052796297763E-19,
  53. 4.071277819975917E-19, 4.520053409594589E-19,
  54. 4.977334107366132E-19, 5.516707191291291E-19,
  55. 6.082931168675559E-19, 6.734956703766505E-19,
  56. 7.432489554623685E-19, 8.223651399147256E-19,
  57. 9.080210233648037E-19, 1.004250388267800E-18,
  58. 1.109225156214032E-18, 1.226448534750949E-18,
  59. 1.354938655056596E-18, 1.497875155579711E-18,
  60. 1.655024636692164E-18, 1.829422009902478E-18,
  61. 2.021527957180686E-18, 2.234394042862191E-18,
  62. 2.469158736824458E-18, 2.729043278909879E-18,
  63. 3.015882778812807E-18, 3.333221019045560E-18,
  64. 3.683642665131121E-18, 4.071174485366807E-18,
  65. 4.499238428427072E-18, 4.972519918024098E-18,
  66. 5.495403162992602E-18, 6.073431145514256E-18,
  67. 6.712116746365455E-18, 7.418091347704607E-18,
  68. 8.198210388921290E-18, 9.060466264497684E-18,
  69. 1.001332641867938E-17, 1.106647001686341E-17,
  70. 1.223031194783507E-17, 1.351661046246575E-17,
  71. 1.493814249254853E-17, 1.650922025025269E-17,
  72. 1.824549287949245E-17, 2.016440324953847E-17,
  73. 2.228509875325462E-17, 2.462885473506622E-17,
  74. 2.721908372832262E-17, 3.008174877960754E-17,
  75. 3.324546598231868E-17, 3.674192913569353E-17,
  76. 4.060610542324258E-17, 4.487669220181069E-17,
  77. 4.959641037849226E-17, 5.481251456381401E-17,
  78. 6.057719336989671E-17, 6.694815564512041E-17,
  79. 7.398915178848498E-17, 8.177066132132114E-17,
  80. 9.037055462918574E-17, 9.987491078055815E-17,
  81. 1.103788451159722E-16, 1.219874911140742E-16,
  82. 1.348170262066998E-16, 1.489958578076007E-16,
  83. 1.646658879212839E-16, 1.819839514458913E-16,
  84. 2.011233698894207E-16, 2.222757000537238E-16,
  85. 2.456526388749016E-16, 2.714881529754608E-16,
  86. 3.000408107960083E-16, 3.315963787425073E-16,
  87. 3.664706739627943E-16, 4.050127315080793E-16,
  88. 4.476082920363670E-16, 4.946836672898304E-16,
  89. 5.467100025245505E-16, 6.042079955957903E-16,
  90. 6.677531050397348E-16, 7.379813122861424E-16,
  91. 8.155954842977402E-16, 9.013724102689123E-16,
  92. 9.961705740887021E-16, 1.100938748010566E-15,
  93. 1.216725486808607E-15, 1.344689623369201E-15,
  94. 1.486111865526057E-15, 1.642407614840039E-15,
  95. 1.815141131499014E-15, 2.006041190779248E-15,
  96. 2.217018384471440E-15, 2.450184243392977E-15,
  97. 2.707872369692257E-15, 2.992661792874233E-15,
  98. 3.307402781094011E-15, 3.655245368051253E-15,
  99. 4.039670879180488E-15, 4.464526774284602E-15,
  100. 4.934065153895433E-15, 5.452985315986473E-15,
  101. 6.026480787914038E-15, 6.660291305149181E-15,
  102. 7.360760256360466E-15, 8.134898170257041E-15,
  103. 8.990452879276204E-15, 9.935987062502841E-15,
  104. 1.098096394385775E-14, 1.213584200318437E-14,
  105. 1.341217964828528E-14, 1.482275089528562E-14,
  106. 1.638167321535499E-14, 1.810454882702344E-14,
  107. 2.000862084851265E-14, 2.211294587257239E-14,
  108. 2.443858469135401E-14, 2.700881307980678E-14,
  109. 2.984935474755050E-14, 3.298863879030854E-14,
  110. 3.645808421795958E-14, 4.029241440643229E-14,
  111. 4.453000462105175E-14, 4.921326608894885E-14,
  112. 5.438907046503769E-14, 6.010921893911273E-14,
  113. 6.643096067976429E-14, 7.341756580308676E-14,
  114. 8.113895860149252E-14, 8.967241736929777E-14,
  115. 9.910334783010448E-14, 1.095261379057530E-13,
  116. 1.210451023825933E-13, 1.337755269287210E-13,
  117. 1.478448219118764E-13, 1.633937975650728E-13,
  118. 1.805780732628623E-13, 1.995696350122467E-13,
  119. 2.205585567465074E-13, 2.437549026489779E-13,
  120. 2.693908295460095E-13, 2.977229104105259E-13,
  121. 3.290347022305518E-13, 3.636395839428896E-13,
  122. 4.018838928348062E-13, 4.441503908040617E-13,
  123. 4.908620951685787E-13, 5.424865123659980E-13,
  124. 5.995403169151822E-13, 6.625945224685207E-13,
  125. 7.322801967084261E-13, 8.092947772848716E-13,
  126. 8.944090520057436E-13, 9.884748731403624E-13,
  127. 1.092433683043238E-12, 1.207325936425662E-12,
  128. 1.334301513576084E-12, 1.474631228748613E-12,
  129. 1.629719548899119E-12, 1.801118650062676E-12,
  130. 1.990543952052933E-12, 2.199891286960273E-12,
  131. 2.431255873276498E-12, 2.686953285545802E-12,
  132. 2.969542629413028E-12, 3.281852154013172E-12,
  133. 3.627007558039277E-12, 4.008463272785582E-12,
  134. 4.430037035256956E-12, 4.895948097364050E-12,
  135. 5.410859453614547E-12, 5.979924509929487E-12,
  136. 6.608838660661838E-12, 7.303896290017477E-12,
  137. 8.072053768367932E-12, 8.920999073943177E-12,
  138. 9.859228736701785E-12, 1.089613287445852E-11,
  139. 1.204208917233957E-11, 1.330856674614333E-11,
  140. 1.470824092910627E-11, 1.625512013089818E-11,
  141. 1.796468603849469E-11, 1.985404856210394E-11,
  142. 2.194211707689892E-11, 2.424978967439970E-11,
  143. 2.680016231759770E-11, 2.961875999311579E-11,
  144. 3.273379217385409E-11, 3.617643514887572E-11,
  145. 3.998114404618718E-11, 4.418599767123930E-11,
  146. 4.883307961241208E-11, 5.396889942771051E-11,
  147. 5.964485812805529E-11, 6.591776261587440E-11,
  148. 7.285039422767879E-11, 8.051213707077629E-11,
  149. 8.897967244274265E-11, 9.833774628361575E-11,
  150. 1.086800173417544E-10, 1.201099945420632E-10,
  151. 1.327420729381141E-10, 1.467026786162787E-10,
  152. 1.621315340105112E-10, 1.791830562914075E-10,
  153. 1.980279028251780E-10, 2.188546791698937E-10,
  154. 2.418718267033471E-10, 2.673097087743666E-10,
  155. 2.954229162567076E-10, 3.264928155800021E-10,
  156. 3.608303647396648E-10, 3.987792254688925E-10,
  157. 4.407192027209688E-10, 4.870700458846789E-10,
  158. 5.382956497775456E-10, 5.949086974607432E-10,
  159. 6.574757913439202E-10, 7.266231239320192E-10,
  160. 8.030427449710128E-10, 8.874994877135167E-10,
  161. 9.808386236281220E-10, 1.083994322159010E-09,
  162. 1.197999000209434E-09, 1.323993654914953E-09,
  163. 1.463239283128961E-09, 1.617129501899646E-09,
  164. 1.787204496262075E-09, 1.975166433922344E-09,
  165. 2.182896501130837E-09, 2.412473730218034E-09,
  166. 2.666195807259519E-09, 2.946602068077095E-09,
  167. 3.256498912782063E-09, 3.598987893149563E-09,
  168. 3.977496754017933E-09, 4.395813739277522E-09,
  169. 4.858125505931142E-09, 5.369059025511281E-09,
  170. 5.933727892433384E-09, 6.557783502483194E-09,
  171. 7.247471613991360E-09, 8.009694857348590E-09,
  172. 8.852081819018630E-09, 9.783063390784292E-09,
  173. 1.081195714921208E-08, 1.194906060875559E-08,
  174. 1.320575428316232E-08, 1.459461558495058E-08,
  175. 1.612954470504804E-08, 1.782590372973567E-08,
  176. 1.970067039062624E-08, 2.177260798218037E-08,
  177. 2.406245315273551E-08, 2.659312344174916E-08,
  178. 2.938994664888302E-08, 3.248091431980495E-08,
  179. 3.589696189917651E-08, 3.967227833770833E-08,
  180. 4.384464827330457E-08, 4.845583018407081E-08,
  181. 5.355197433170284E-08, 5.918408463559961E-08,
  182. 6.540852915386353E-08, 7.228760421284378E-08,
  183. 7.989015791604288E-08, 8.829227916594097E-08,
  184. 9.757805922900159E-08, 1.078404332968648E-07,
  185. 1.191821106789995E-07, 1.317166026689236E-07,
  186. 1.455693587079098E-07, 1.608790217936311E-07,
  187. 1.777988162313823E-07, 1.964980809461758E-07,
  188. 2.171639645456637E-07, 2.400032980365736E-07,
  189. 2.652446652738443E-07, 2.931406901825997E-07,
  190. 3.239705657602287E-07, 3.580428475071237E-07,
  191. 3.956985425939703E-07, 4.373145214673157E-07,
  192. 4.833072913425415E-07, 5.341371626757850E-07,
  193. 5.903128587132423E-07, 6.523966036832935E-07,
  194. 7.210097538541495E-07, 7.968390110811429E-07,
  195. 8.806433020866372E-07, 9.732613658282036E-07,
  196. 1.075620158230134E-06, 1.188744116446123E-06,
  197. 1.313765428158270E-06, 1.451935342270991E-06,
  198. 1.604636717777632E-06, 1.773397831228256E-06,
  199. 1.959907713317686E-06, 2.166033001576880E-06,
  200. 2.393836687356070E-06, 2.645598681084377E-06,
  201. 2.923838733370935E-06, 3.231341523918154E-06,
  202. 3.571184694601016E-06, 3.946769446344899E-06,
  203. 4.361854837678969E-06, 4.820595081762782E-06,
  204. 5.327581531949061E-06, 5.887888119174313E-06,
  205. 6.507122780830562E-06, 7.191482772393097E-06,
  206. 7.947817716468041E-06, 8.783696866498923E-06,
  207. 9.707486485040472E-06, 1.072843153422521E-05,
  208. 1.185675077161778E-05, 1.310373578995573E-05,
  209. 1.448186809502301E-05, 1.600493890578862E-05,
  210. 1.768819362222417E-05, 1.954847630132444E-05,
  211. 2.160440843572022E-05, 2.387656249074371E-05,
  212. 2.638768394666778E-05, 2.916289862392297E-05,
  213. 3.222998971512441E-05, 3.561964367629314E-05,
  214. 3.936579782365431E-05, 4.350592904974602E-05,
  215. 4.808149299156779E-05, 5.313825827671661E-05,
  216. 5.872686606041739E-05, 6.490320915255368E-05,
  217. 7.172915206849267E-05, 7.927294798468421E-05,
  218. 8.761017620761336E-05, 9.682417843295337E-05,
  219. 1.070072955978771E-04, 1.182612851235724E-04,
  220. 1.306989769939818E-04, 1.444446003274482E-04,
  221. 1.596360362963627E-04, 1.764249271609239E-04,
  222. 1.949797924244976E-04, 2.154857030671910E-04,
  223. 2.381486646105023E-04, 2.631944925246626E-04,
  224. 2.908750792099106E-04, 3.214658697246949E-04,
  225. 3.552749625435381E-04, 3.926382043270680E-04,
  226. 4.339325952975191E-04, 4.795674127479124E-04,
  227. 5.300042093562213E-04, 5.857414026355948E-04,
  228. 6.473444397414629E-04, 7.154197401707392E-04,
  229. 7.906606243262904E-04, 8.738040302727717E-04,
  230. 9.657009935888906E-04, 1.067245638145834E-03,
  231. 1.179484028621435E-03, 1.303498707764836E-03,
  232. 1.440577691237741E-03, 1.592027938865682E-03,
  233. 1.759438818176274E-03, 1.944382214020240E-03,
  234. 2.148824632015574E-03, 2.374646777242952E-03,
  235. 2.624289840901410E-03, 2.899987938462482E-03,
  236. 3.204783728012370E-03, 3.541304571287609E-03,
  237. 3.913361077715114E-03, 4.323998734848948E-03,
  238. 4.778017035442578E-03, 5.278871213895021E-03,
  239. 5.832645828904957E-03, 6.443132211847618E-03,
  240. 7.118100704687155E-03, 7.861484687059508E-03,
  241. 8.683286454219962E-03, 9.587172959576953E-03,
  242. 1.058612645311708E-02, 1.168276512339872E-02,
  243. 1.289407692301174E-02, 1.422020567085629E-02,
  244. 1.568354709989395E-02, 1.727924763496293E-02,
  245. 1.903701004445868E-02, 2.094259894090355E-02,
  246. 2.303555498203885E-02, 2.528473397535577E-02,
  247. 2.774280095909549E-02, 3.034889679856765E-02,
  248. 3.317292189089636E-02, 3.610269051747732E-02,
  249. 3.923023471609136E-02, 4.235591398256915E-02,
  250. 4.559945470018810E-02, 4.861418172220856E-02,
  251. 5.155399423688033E-02, 5.382905665985834E-02,
  252. 5.563737547309198E-02, 5.599656739496778E-02,
  253. 5.517328802198061E-02, 5.157565446188783E-02,
  254. 4.561585237274122E-02, 3.481744626013846E-02,
  255. 1.997678484763328E-02,-2.511444299727086E-03,
  256. -3.078890380569448E-02,-6.952663437748715E-02,
  257. -1.140926319655417E-01,-1.692861783153246E-01,
  258. -2.240265004914591E-01,-2.809223452446239E-01,
  259. -3.165386782849084E-01,-3.295050746499982E-01,
  260. -2.805919713655642E-01,-1.744060875765448E-01,
  261. 2.722628846693606E-02, 2.668949880744598E-01,
  262. 5.262102231394616E-01, 6.256684356927903E-01,
  263. 4.995016301447683E-01,-1.002368152582941E-02,
  264. -6.114010724740713E-01,-9.727382503860407E-01,
  265. -3.838420705230950E-01, 7.198704705669955E-01,
  266. 1.262041888009595E+00,-2.998397076312483E-01,
  267. -1.479978761932394E+00, 1.886890549669046E-01,
  268. 1.961538671802124E+00,-2.104506074490929E+00,
  269. 7.701373097387101E-01, 4.062497351127477E-01,
  270. -8.229740504000808E-01, 7.307456920106093E-01,
  271. -4.903037312539515E-01, 2.839808721720737E-01,
  272. -1.517915989046718E-01, 7.860615976683388E-02,
  273. -4.139435902417716E-02, 2.340179865400356E-02,
  274. -1.488928090494461E-02, 1.080204283974104E-02,
  275. -8.695630540330540E-03, 7.448774255862835E-03,
  276. -6.571253694245813E-03, 5.859704720178251E-03,
  277. -5.235154219023063E-03, 4.669537109654244E-03,
  278. -4.153880559277143E-03, 3.685278478886407E-03,
  279. -3.262012231674279E-03, 2.882025619739767E-03,
  280. -2.542670610556139E-03, 2.240859550470028E-03,
  281. -1.973292341858488E-03, 1.736649256291777E-03,
  282. -1.527725614465373E-03, 1.343513590939351E-03,
  283. -1.181244115916277E-03, 1.038401885876272E-03,
  284. -9.127236961818876E-04, 8.021869803583510E-04,
  285. -7.049929363136232E-04, 6.195471678105551E-04,
  286. -5.444398377266471E-04, 4.784265058211163E-04,
  287. -4.204101656165671E-04, 3.694246665626042E-04,
  288. -3.246196272200836E-04, 2.852468930079681E-04,
  289. -2.506484828993674E-04, 2.202458813636377E-04,
  290. -1.935305291014704E-04, 1.700554065180346E-04,
  291. -1.494276181460851E-04, 1.313018693894386E-04,
  292. -1.153747197310416E-04, 1.013795159657149E-04,
  293. -8.908193308740761E-05, 7.827605834070905E-05,
  294. -6.878095175364698E-05, 6.043762035968366E-05,
  295. -5.310635544925448E-05, 4.666439257514449E-05,
  296. -4.100385733848758E-05, 3.602996086454923E-05,
  297. -3.165941281357187E-05, 2.781902585783293E-05,
  298. -2.444448983707277E-05, 2.147929539928508E-05,
  299. -1.887378820764930E-05, 1.658433732127529E-05,
  300. -1.457260421932255E-05, 1.280490076321861E-05,
  301. -1.125162529600942E-05, 9.886767060922143E-06,
  302. -8.687470528401389E-06, 7.633652544743499E-06,
  303. -6.707666049011719E-06, 5.894004649462370E-06,
  304. -5.179042976527735E-06, 4.550808463155193E-06,
  305. -3.998780821517730E-06, 3.513715894699684E-06,
  306. -3.087490887193285E-06, 2.712968339794580E-06,
  307. -2.383876585436306E-06, 2.094704718364733E-06,
  308. -1.840610321658703E-06, 1.617338386451554E-06,
  309. -1.421150054108675E-06, 1.248759998169063E-06,
  310. -1.097281408784448E-06, 9.641776560691427E-07,
  311. -8.472198144303782E-07, 7.444493348026655E-07,
  312. -6.541452446960252E-07, 5.747953299561648E-07,
  313. -5.050708135463763E-07, 4.438041043830051E-07,
  314. -3.899692438669907E-07, 3.426647247474678E-07,
  315. -3.010983952488172E-07, 2.645741945310525E-07,
  316. -2.324804964806138E-07, 2.042798670572760E-07,
  317. -1.795000644284691E-07, 1.577261311964345E-07,
  318. -1.385934457978807E-07, 1.217816165104314E-07,
  319. -1.070091160694850E-07, 9.402856728542481E-08,
  320. -8.262260063861433E-08, 7.260021429510923E-08,
  321. -6.379357556568284E-08, 5.605521036390507E-08,
  322. -4.925553366022761E-08, 4.328067952283362E-08,
  323. -3.803059434473390E-08, 3.341736133872807E-08,
  324. -2.936372828943425E-08, 2.580181391877248E-08,
  325. -2.267197117462836E-08, 1.992178838990867E-08,
  326. -1.750521159700888E-08, 1.538177331647477E-08,
  327. -1.351591490408599E-08, 1.187639109711096E-08,
  328. -1.043574678473461E-08, 9.169857246988264E-09,
  329. -8.057524168015392E-09, 7.080120656351000E-09,
  330. -6.221279323637567E-09, 5.466618198282681E-09,
  331. -4.803499887007487E-09, 4.220819952418786E-09,
  332. -3.708820961440479E-09, 3.258929089378474E-09,
  333. -2.863610543832675E-09, 2.516245405206862E-09,
  334. -2.211016771314404E-09, 1.942813349072686E-09,
  335. -1.707143861761559E-09, 1.500061838825614E-09,
  336. -1.318099529115311E-09, 1.158209830829835E-09,
  337. -1.017715265474667E-09, 8.942631413031228E-10,
  338. -7.857861555682931E-10, 6.904677759378704E-10,
  339. -6.067118212948776E-10, 5.331157324405220E-10,
  340. -4.684470851019305E-10, 4.116229519995125E-10,
  341. -3.616917683963526E-10, 3.178173974200357E-10,
  342. -2.792651282909316E-10, 2.453893729983475E-10,
  343. -2.156228554187546E-10, 1.894671118403349E-10,
  344. -1.664841438026135E-10, 1.462890834648734E-10,
  345. -1.285437486867098E-10, 1.129509799028343E-10,
  346. -9.924966395649082E-11, 8.721036155589632E-11,
  347. -7.663146513121262E-11, 6.733582275589511E-11,
  348. -5.916777159927192E-11, 5.199053123157253E-11,
  349. -4.568391312831626E-11, 4.014230801823632E-11,
  350. -3.527291737272422E-11, 3.099419942203976E-11,
  351. -2.723450367478780E-11, 2.393087107406673E-11,
  352. -2.102797969829416E-11, 1.847721835214320E-11,
  353. -1.623587253411553E-11, 1.426640914879302E-11,
  354. -1.253584798559500E-11, 1.101520943914518E-11,
  355. -9.679029223044069E-12, 8.504931950483330E-12,
  356. -7.473256440847272E-12, 6.566726477759826E-12,
  357. -5.770161505244737E-12, 5.070222417415932E-12,
  358. -4.455188184705872E-12, 3.914759576021876E-12,
  359. -3.439886690015256E-12, 3.022617407370815E-12,
  360. -2.655964226336168E-12, 2.333787251527801E-12,
  361. -2.050691376558676E-12, 1.801935938738539E-12,
  362. -1.583355332954674E-12, 1.391289255348560E-12,
  363. -1.222521408656179E-12, 1.074225642782795E-12,
  364. -9.439186286983481E-13, 8.294182731437524E-13,
  365. -7.288071777679118E-13, 6.404005307872462E-13,
  366. -5.627178934884672E-13, 4.944584091193514E-13,
  367. -4.344790190215893E-13, 3.817753212167385E-13,
  368. -3.354647509064286E-13, 2.947718012314345E-13,
  369. -2.590150368003291E-13, 2.275956825191015E-13,
  370. -1.999875966322778E-13, 1.757284600660376E-13,
  371. -1.544120345321836E-13, 1.356813597490631E-13,
  372. -1.192227758615040E-13, 1.047606709603187E-13,
  373. -9.205286574443716E-14, 8.088655803832021E-14,
  374. -7.107475925247343E-14, 6.245316311274798E-14,
  375. -5.487739422278246E-14, 4.822059038461202E-14,
  376. -4.237127819154857E-14, 3.723150631847816E-14,
  377. -3.271520525003134E-14, 2.874674597896990E-14,
  378. -2.525967353907224E-14, 2.219559416454687E-14,
  379. -1.950319744058413E-14, 1.713739707017873E-14,
  380. -1.505857586868545E-14, 1.323192234295437E-14,
  381. -1.162684774554722E-14, 1.021647384214807E-14,
  382. -8.977182814427699E-15, 7.888221761131355E-15,
  383. -6.931355174452619E-15, 6.090559572138626E-15,
  384. -5.351755171700232E-15, 4.702570113399845E-15,
  385. -4.132133283746073E-15, 3.630892270162917E-15,
  386. -3.190453398341683E-15, 2.803441173574897E-15,
  387. -2.463374772306652E-15, 2.164559515653694E-15,
  388. -1.901991507536473E-15, 1.671273840510759E-15,
  389. -1.468542966100438E-15, 1.290403996644843E-15,
  390. -1.133873855239388E-15, 9.963313217707399E-16,
  391. -8.754731385280971E-16, 7.692754403444974E-16,
  392. -6.759598633855865E-16, 5.939637650509565E-16,
  393. -5.219140562969427E-16, 4.586042081825544E-16,
  394. -4.029740475950767E-16, 3.540920038189227E-16,
  395. -3.111395086526072E-16, 2.733972888415509E-16,
  396. -2.402333212827215E-16, 2.110922493015534E-16,
  397. -1.854860827684001E-16, 1.629860263206755E-16,
  398. -1.432152988478505E-16, 1.258428239959391E-16,
  399. -1.105776860340182E-16, 9.716425824191095E-17,
  400. -8.537792224005708E-17, 7.502130657839168E-17,
  401. -6.592098159645411E-17, 5.792455520756561E-17,
  402. -5.089812097369260E-17, 4.472401573699795E-17,
  403. -3.929884925786503E-17, 3.453177286415005E-17,
  404. -3.034295811884372E-17, 2.666226003023219E-17,
  405. -2.342804241895063E-17, 2.058614577177349E-17,
  406. -1.808898029804633E-17, 1.589472900128195E-17,
  407. -1.396664742072978E-17, 1.227244831653922E-17,
  408. -1.078376099458355E-17, 9.475656216910048E-18,
  409. -8.326228742065685E-18, 7.316230504610306E-18,
  410. -6.428748291129759E-18, 5.648920515191333E-18,
  411. -4.963688348418389E-18, 4.361577040171507E-18,
  412. -3.832503763852548E-18, 3.367608772061774E-18,
  413. -2.959107033168789E-18, 2.600157864838119E-18,
  414. -2.284750381424515E-18, 2.007602836968745E-18,
  415. -1.764074178215185E-18, 1.550086326535024E-18,
  416. -1.362055887301009E-18, 1.196834143131819E-18,
  417. -1.051654326148005E-18, 9.240852862763527E-19,
  418. -8.119907797435101E-19, 7.134936960083838E-19,
  419. -6.269446240781204E-19, 5.508942318228495E-19,
  420. -4.840689957627215E-19, 4.253498749090647E-19,
  421. -3.737535715383304E-19, 3.284160650943604E-19,
  422. -2.885781434802982E-19, 2.535726894517719E-19,
  423. -2.228135092144265E-19, 1.957855161528666E-19,
  424. -1.720361053077579E-19, 1.511675741544441E-19,
  425. -1.328304627571508E-19, 1.167177017717951E-19,
  426. -1.025594703000911E-19, 9.011867747602604E-20,
  427. -7.918699208456320E-20, 6.958135363559505E-20,
  428. -6.114090626414241E-20, 5.372430364847189E-20,
  429. -4.720733874362162E-20, 4.148085614846149E-20,
  430. -3.644890635898519E-20, 3.202709755606534E-20,
  431. -2.814108611035396E-20, 2.472510802483146E-20,
  432. -2.172035832750181E-20, 1.907280017594962E-20,
  433. -7.276967157651721E-21;
  434. }
  435. } // end of namespace Lemma