#include #ifndef WARPX_GODFREY_COEFF_TABLE_H_ #define WARPX_GODFREY_COEFF_TABLE_H_ // Table width. This is related to the stencil length const int tab_width = 4; // table length. Each line correspond to 1 value of cdtodz // (here 101 values). const int tab_length = 101; // Table of coefficient for Ex, Ey and Bz for Galerkin gather. // Each line stands for one value of c*dt/dz, between 0 and 1. // We typically interpolate between two lines. const amrex::Real table_nci_godfrey_galerkin_Ex_Ey_Bz[tab_length][tab_width]{ -2.47536,2.04288,-0.598163,0.0314711, -2.47536,2.04288,-0.598163,0.0314711, -2.47545,2.04309,-0.598307,0.0315029, -2.4756,2.04342,-0.598549,0.0315558, -2.47581,2.0439,-0.598886,0.0316298, -2.47608,2.0445,-0.59932,0.031725, -2.47641,2.04525,-0.59985,0.0318412, -2.4768,2.04612,-0.600477,0.0319785, -2.47725,2.04714,-0.6012,0.0321367, -2.47776,2.04829,-0.602019,0.0323158, -2.47833,2.04957,-0.602934,0.0325158, -2.47896,2.05099,-0.603944,0.0327364, -2.47965,2.05254,-0.605051,0.0329777, -2.4804,2.05423,-0.606253,0.0332396, -2.48121,2.05606,-0.60755,0.0335218, -2.48208,2.05802,-0.608942,0.0338243, -2.48301,2.06012,-0.610429,0.0341469, -2.48401,2.06235,-0.61201,0.0344895, -2.48506,2.06471,-0.613685,0.0348519, -2.48618,2.06721,-0.615453,0.0352339, -2.48735,2.06984,-0.617314,0.0356353, -2.48859,2.07261,-0.619268,0.0360559, -2.48988,2.0755,-0.621312,0.0364954, -2.49123,2.07853,-0.623447,0.0369536, -2.49265,2.08169,-0.625672,0.0374302, -2.49412,2.08498,-0.627986,0.0379248, -2.49565,2.0884,-0.630386,0.0384372, -2.49724,2.09194,-0.632873,0.0389669, -2.49888,2.09561,-0.635443,0.0395135, -2.50058,2.09939,-0.638096,0.0400766, -2.50234,2.1033,-0.640829,0.0406557, -2.50415,2.10732,-0.64364,0.0412502, -2.50601,2.11145,-0.646526,0.0418594, -2.50791,2.1157,-0.649485,0.0424828, -2.50987,2.12004,-0.652512,0.0431196, -2.51187,2.12448,-0.655604,0.0437688, -2.51392,2.12901,-0.658756,0.0444297, -2.516,2.13363,-0.661964,0.0451011, -2.51812,2.13832,-0.665221,0.0457818, -2.52027,2.14308,-0.668521,0.0464705, -2.52244,2.14789,-0.671856,0.0471658, -2.52464,2.15274,-0.675218,0.0478658, -2.52684,2.15762,-0.678596,0.0485687, -2.52906,2.16251,-0.68198,0.0492723, -2.53126,2.16738,-0.685355,0.049974, -2.53345,2.17222,-0.688706,0.0506708, -2.53561,2.177,-0.692015,0.0513594, -2.53773,2.18168,-0.69526,0.0520359, -2.53978,2.18623,-0.698416,0.0526955, -2.54175,2.19059,-0.701452,0.053333, -2.5436,2.19471,-0.704331,0.0539417, -2.54531,2.19852,-0.70701,0.0545141, -2.54683,2.20193,-0.709433,0.0550409, -2.5481,2.20483,-0.711533,0.0555106, -2.54906,2.20709,-0.713224,0.0559094, -2.54963,2.20852,-0.714397,0.0562198, -2.54968,2.20888,-0.714907,0.0564196, -2.54905,2.20785,-0.714562,0.0564797, -2.54751,2.20496,-0.713094,0.0563618, -2.54472,2.19955,-0.710118,0.0560124, -2.54014,2.19058,-0.705048,0.0553544, -2.53286,2.1763,-0.69693,0.0542684, -2.52115,2.15344,-0.684027,0.05255, -2.50098,2.11466,-0.66255,0.0497817, -2.45797,2.03459,-0.620099,0.0446889, -2.28371,1.72254,-0.465905,0.0283268, -2.4885,2.04899,-0.599292,0.0390466, -2.1433,1.36735,-0.220924,-0.00215633, -2.4943,2.07019,-0.610552,0.035166, -2.84529,2.77303,-1.00018,0.0724884, -2.72242,2.51888,-0.847226,0.0509964, -2.65633,2.3744,-0.750392,0.0326366, -2.59601,2.23412,-0.646421,0.00868027, -2.51477,2.0369,-0.491066,-0.0306397, -2.35935,1.65155,-0.178971,-0.112713, -1.84315,0.361693,0.876104,-0.393844, -2.65422,2.39262,-0.789663,0.0516265, -3.46529,4.42354,-2.45543,0.497097, -3.15747,3.65311,-1.824,0.328432, -3.04694,3.37613,-1.59668,0.267631, -2.99205,3.23814,-1.48302,0.237103, -2.96075,3.15894,-1.41733,0.219317, -2.94172,3.11028,-1.37649,0.20811, -2.92994,3.07962,-1.35025,0.200755, -2.92283,3.06054,-1.33338,0.195859, -2.91894,3.04938,-1.3229,0.192637, -2.91736,3.04394,-1.31702,0.190612, -2.91753,3.04278,-1.31456,0.189477, -2.91905,3.04494,-1.31475,0.189026, -2.92165,3.04973,-1.31705,0.189117, -2.92512,3.05667,-1.32105,0.189646, -2.92933,3.06539,-1.32646,0.190538, -2.93416,3.07562,-1.33308,0.191735, -2.93952,3.08715,-1.34072,0.193194, -2.94535,3.09982,-1.34925,0.194881, -2.95159,3.11349,-1.35858,0.196769, -2.9582,3.12805,-1.36861,0.198838, -2.96514,3.14342,-1.37929,0.201068, -2.97239,3.15953,-1.39055,0.203448, -2.97991,3.17632,-1.40234,0.205964, -2.98769,3.19374,-1.41463,0.208607 }; // Table of coefficient for Bx, By and Ez for Galerkin gather. // Each line stands for one value of c*dt/dz, between 0 and 1. // We typically interpolate between two lines. const amrex::Real table_nci_godfrey_galerkin_Bx_By_Ez[tab_length][tab_width]{ -2.80862,2.80104,-1.14615,0.154077, -2.80862,2.80104,-1.14615,0.154077, -2.80851,2.80078,-1.14595,0.154027, -2.80832,2.80034,-1.14561,0.153945, -2.80807,2.79973,-1.14514,0.153829, -2.80774,2.79894,-1.14454,0.15368, -2.80733,2.79798,-1.1438,0.153498, -2.80685,2.79685,-1.14292,0.153284, -2.8063,2.79554,-1.14192,0.153036, -2.80568,2.79405,-1.14077,0.152756, -2.80498,2.79239,-1.1395,0.152443, -2.80421,2.79056,-1.13809,0.152098, -2.80337,2.78856,-1.13656,0.151721, -2.80246,2.78638,-1.13488,0.151312, -2.80147,2.78404,-1.13308,0.150871, -2.80041,2.78152,-1.13115,0.150397, -2.79927,2.77882,-1.12908,0.149893, -2.79807,2.77596,-1.12689,0.149356, -2.79679,2.77292,-1.12456,0.148789, -2.79543,2.76972,-1.12211,0.14819, -2.79401,2.76634,-1.11953,0.14756, -2.79251,2.76279,-1.11681,0.1469, -2.79094,2.75907,-1.11397,0.146208, -2.78929,2.75517,-1.111,0.145486, -2.78757,2.7511,-1.10789,0.144733, -2.78578,2.74686,-1.10466,0.14395, -2.78391,2.74245,-1.1013,0.143137, -2.78196,2.73786,-1.09781,0.142293, -2.77994,2.73309,-1.09419,0.141419, -2.77784,2.72814,-1.09043,0.140514, -2.77566,2.72301,-1.08654,0.139578, -2.7734,2.7177,-1.08252,0.138612, -2.77106,2.7122,-1.07836,0.137614, -2.76864,2.70651,-1.07406,0.136586, -2.76613,2.70062,-1.06962,0.135525, -2.76353,2.69453,-1.06503,0.134432, -2.76084,2.68824,-1.0603,0.133307, -2.75806,2.68173,-1.05541,0.132148, -2.75518,2.675,-1.05037,0.130954, -2.75219,2.66804,-1.04516,0.129725, -2.7491,2.66084,-1.03978,0.12846, -2.7459,2.65339,-1.03423,0.127156, -2.74257,2.64566,-1.02848,0.125813, -2.73912,2.63765,-1.02254,0.124428, -2.73552,2.62934,-1.01638,0.122999, -2.73178,2.62069,-1.01,0.121523, -2.72787,2.61169,-1.00337,0.119996, -2.72379,2.6023,-0.996479,0.118417, -2.71951,2.59248,-0.989294,0.116778, -2.71501,2.58218,-0.981786,0.115076, -2.71026,2.57135,-0.97392,0.113303, -2.70524,2.55991,-0.965651,0.111453, -2.69989,2.54778,-0.956922,0.109514, -2.69416,2.53484,-0.947666,0.107476, -2.68799,2.52096,-0.937795,0.105324, -2.68129,2.50596,-0.927197,0.103039, -2.67394,2.48959,-0.915724,0.100597, -2.66578,2.47153,-0.903179,0.097968, -2.65657,2.4513,-0.889283,0.0951084, -2.64598,2.42824,-0.873638,0.0919592, -2.63347,2.40127,-0.855632,0.0884325, -2.61813,2.36864,-0.834261,0.0843898, -2.59821,2.32701,-0.807691,0.0795876, -2.56971,2.26887,-0.77188,0.0735132, -2.51823,2.16823,-0.713448,0.0645399, -2.33537,1.8294,-0.533852,0.0409941, -2.53143,2.14818,-0.670502,0.053982, -2.17737,1.43641,-0.259095,0.00101255, -2.51929,2.12931,-0.654743,0.0452381, -2.86122,2.82221,-1.05039,0.0894636, -2.72908,2.54506,-0.87834,0.0626188, -2.6536,2.37954,-0.7665,0.0409117, -2.58374,2.21923,-0.649738,0.0146791, -2.49284,2.00346,-0.48457,-0.0255348, -2.32762,1.60337,-0.1698,-0.105287, -1.80149,0.316787,0.855414,-0.369652, -2.60242,2.28418,-0.721378,0.040091, -3.40335,4.25157,-2.29817,0.449834, -3.0852,3.47341,-1.67791,0.28982, -2.9642,3.17856,-1.44399,0.229852, -2.89872,3.01966,-1.31861,0.197945, -2.85668,2.91811,-1.23894,0.17783, -2.82679,2.84621,-1.18287,0.163785, -2.80401,2.79167,-1.14058,0.153278, -2.78577,2.74819,-1.10706,0.145015, -2.77061,2.7122,-1.07946,0.138267, -2.75764,2.68152,-1.05606,0.132589, -2.74627,2.65475,-1.03575,0.127695, -2.73612,2.63093,-1.01777,0.123395, -2.72692,2.6094,-1.00159,0.119553, -2.71846,2.58968,-0.986841,0.116074, -2.71061,2.57142,-0.973239,0.112887, -2.70323,2.55434,-0.960573,0.109937, -2.69626,2.53824,-0.948678,0.107185, -2.68962,2.52294,-0.937429,0.104598, -2.68327,2.50833,-0.926722,0.102151, -2.67714,2.4943,-0.916477,0.0998223, -2.67122,2.48076,-0.906627,0.0975966, -2.66546,2.46764,-0.897118,0.0954599, -2.65985,2.45489,-0.887903,0.0934011, -2.65437,2.44244,-0.878945,0.0914107 }; // Table of coefficient for Ex, Ey and Bz for momentum-conserving gather // (from node-centered fields). // Each line stands for one value of c*dt/dz, between 0 and 1. // We typically interpolate between two lines. const amrex::Real table_nci_godfrey_momentum_Ex_Ey_Bz[tab_length][tab_width]{ -2.98767,3.19368,-1.41458,0.208594, -2.98767,3.19368,-1.41458,0.208594, -2.9876,3.19351,-1.41444,0.208555, -2.98749,3.19323,-1.41421,0.208491, -2.98734,3.19285,-1.41388,0.208402, -2.98716,3.19237,-1.41348,0.20829, -2.98693,3.19179,-1.41299,0.208157, -2.98668,3.19114,-1.41244,0.208006, -2.98639,3.19041,-1.41183,0.207837, -2.98608,3.18962,-1.41116,0.207655, -2.98576,3.18878,-1.41046,0.207463, -2.98542,3.18791,-1.40972,0.207262, -2.98507,3.18701,-1.40898,0.207058, -2.98472,3.18612,-1.40822,0.206852, -2.98437,3.18523,-1.40748,0.20665, -2.98403,3.18437,-1.40676,0.206454, -2.98371,3.18355,-1.40608,0.206269, -2.98341,3.18279,-1.40544,0.206097, -2.98314,3.1821,-1.40487,0.205943, -2.98291,3.1815,-1.40437,0.20581, -2.98271,3.181,-1.40397,0.205702, -2.98256,3.18062,-1.40366,0.205622, -2.98246,3.18037,-1.40346,0.205572, -2.98241,3.18027,-1.40339,0.205557, -2.98243,3.18033,-1.40345,0.20558, -2.98251,3.18056,-1.40366,0.205642, -2.98267,3.18097,-1.40402,0.205747, -2.9829,3.18157,-1.40455,0.205896, -2.98321,3.18238,-1.40524,0.206093, -2.9836,3.1834,-1.40612,0.206339, -2.98407,3.18465,-1.40718,0.206637, -2.98464,3.18612,-1.40844,0.206987, -2.9853,3.18783,-1.40989,0.207392, -2.98606,3.18979,-1.41156,0.207853, -2.98691,3.19199,-1.41343,0.208372, -2.98787,3.19446,-1.41551,0.208948, -2.98892,3.19718,-1.41782,0.209585, -2.99008,3.20017,-1.42034,0.210281, -2.99135,3.20343,-1.42309,0.211039, -2.99273,3.20697,-1.42608,0.211859, -2.99421,3.21078,-1.42929,0.212741, -2.9958,3.21487,-1.43273,0.213686, -2.99751,3.21925,-1.43641,0.214695, -2.99933,3.22391,-1.44033,0.215767, -3.00126,3.22886,-1.44449,0.216904, -3.0033,3.2341,-1.44888,0.218105, -3.00546,3.23964,-1.45352,0.219371, -3.00774,3.24546,-1.4584,0.220701, -3.01013,3.25158,-1.46352,0.222096, -3.01264,3.25799,-1.46888,0.223557, -3.01526,3.26469,-1.47449,0.225082, -3.018,3.2717,-1.48034,0.226672, -3.02086,3.279,-1.48644,0.228327, -3.02384,3.28659,-1.49278,0.230048, -3.02694,3.29449,-1.49936,0.231833, -3.03015,3.30268,-1.50619,0.233684, -3.03348,3.31117,-1.51327,0.2356, -3.03693,3.31996,-1.52059,0.237581, -3.0405,3.32904,-1.52815,0.239627, -3.04418,3.33843,-1.53596,0.241738, -3.04799,3.34812,-1.54402,0.243915, -3.05191,3.3581,-1.55232,0.246156, -3.05596,3.36838,-1.56087,0.248463, -3.06012,3.37896,-1.56966,0.250835, -3.0644,3.38984,-1.5787,0.253272, -3.0688,3.40102,-1.58798,0.255774, -3.07332,3.4125,-1.59751,0.258342, -3.07795,3.42428,-1.60729,0.260976, -3.08271,3.43636,-1.61731,0.263675, -3.08758,3.44874,-1.62758,0.26644, -3.09257,3.46142,-1.6381,0.269271, -3.09769,3.47439,-1.64886,0.272168, -3.10292,3.48767,-1.65987,0.275131, -3.10826,3.50125,-1.67113,0.278161, -3.11373,3.51513,-1.68264,0.281258, -3.11932,3.52931,-1.6944,0.284421, -3.12502,3.54379,-1.7064,0.287652, -3.13084,3.55857,-1.71866,0.29095, -3.13678,3.57365,-1.73117,0.294316, -3.14284,3.58903,-1.74393,0.297751, -3.14902,3.60472,-1.75694,0.301254, -3.15531,3.6207,-1.7702,0.304825, -3.16173,3.63699,-1.78372,0.308466, -3.16826,3.65359,-1.79749,0.312177, -3.17491,3.67048,-1.81152,0.315958, -3.18168,3.68768,-1.82581,0.31981, -3.18856,3.70519,-1.84035,0.323732, -3.19557,3.72299,-1.85515,0.327726, -3.20269,3.74111,-1.8702,0.331792, -3.20993,3.75953,-1.88552,0.33593, -3.21729,3.77825,-1.9011,0.340142, -3.22476,3.79729,-1.91694,0.344427, -3.23236,3.81662,-1.93305,0.348786, -3.24007,3.83627,-1.94942,0.353221, -3.2479,3.85623,-1.96606,0.35773, -3.25584,3.87649,-1.98296,0.362316, -3.26391,3.89706,-2.00013,0.366978, -3.27209,3.91795,-2.01758,0.371718, -3.28039,3.93914,-2.03529,0.376536, -3.2888,3.96065,-2.05328,0.381432, -3.2888,3.96065,-2.05328,0.381432 }; // Table of coefficient for Bx, By and Ez for momentum-conserving gather // (from node-centered fields). // Each line stands for one value of c*dt/dz, between 0 and 1. // We typically interpolate between two lines. const amrex::Real table_nci_godfrey_momentum_Bx_By_Ez[tab_length][tab_width]{ -2.65428,2.44224,-0.878796,0.0913764, -2.65428,2.44224,-0.878796,0.0913764, -2.65401,2.44163,-0.878347,0.0912737, -2.65357,2.44061,-0.877602,0.0911031, -2.65296,2.43919,-0.876563,0.0908654, -2.65217,2.43738,-0.875236,0.0905616, -2.65121,2.43518,-0.873624,0.0901933, -2.65009,2.43261,-0.871736,0.089762, -2.6488,2.42966,-0.869579,0.0892697, -2.64736,2.42635,-0.86716,0.0887186, -2.64577,2.4227,-0.86449,0.088111, -2.64403,2.41871,-0.861579,0.0874494, -2.64215,2.4144,-0.858436,0.0867364, -2.64013,2.40979,-0.855074,0.0859749, -2.63798,2.40488,-0.851503,0.0851676, -2.63571,2.39969,-0.847734,0.0843175, -2.63333,2.39425,-0.84378,0.0834274, -2.63083,2.38855,-0.839652,0.0825004, -2.62822,2.38262,-0.835361,0.0815392, -2.62552,2.37647,-0.830918,0.0805468, -2.62272,2.37011,-0.826336,0.0795259, -2.61984,2.36357,-0.821624,0.0784793, -2.61687,2.35684,-0.816793,0.0774095, -2.61383,2.34995,-0.811854,0.076319, -2.61071,2.34291,-0.806815,0.0752104, -2.60753,2.33573,-0.801685,0.0740857, -2.60428,2.32842,-0.796474,0.0729473, -2.60098,2.32098,-0.791189,0.0717971, -2.59762,2.31344,-0.785838,0.070637, -2.59421,2.3058,-0.780428,0.0694688, -2.59076,2.29806,-0.774966,0.0682941, -2.58726,2.29024,-0.769458,0.0671146, -2.58372,2.28234,-0.76391,0.0659314, -2.58014,2.27437,-0.758326,0.064746, -2.57653,2.26633,-0.752711,0.0635596, -2.57288,2.25824,-0.74707,0.0623731, -2.5692,2.25009,-0.741407,0.0611876, -2.5655,2.24189,-0.735726,0.060004, -2.56177,2.23365,-0.730029,0.058823, -2.55801,2.22537,-0.724319,0.0576454, -2.55422,2.21704,-0.7186,0.0564718, -2.55042,2.20869,-0.712873,0.0553027, -2.54659,2.2003,-0.707141,0.0541387, -2.54274,2.19188,-0.701405,0.0529802, -2.53887,2.18343,-0.695668,0.0518276, -2.53498,2.17496,-0.68993,0.0506813, -2.53108,2.16647,-0.684193,0.0495415, -2.52715,2.15795,-0.678458,0.0484085, -2.52321,2.14941,-0.672726,0.0472826, -2.51925,2.14085,-0.666998,0.0461638, -2.51528,2.13227,-0.661275,0.0450525, -2.51129,2.12367,-0.655557,0.0439488, -2.50728,2.11506,-0.649845,0.0428526, -2.50326,2.10642,-0.644139,0.0417643, -2.49922,2.09778,-0.63844,0.0406838, -2.49516,2.08911,-0.632749,0.0396112, -2.4911,2.08043,-0.627065,0.0385466, -2.48701,2.07174,-0.621388,0.03749, -2.48291,2.06303,-0.61572,0.0364415, -2.4788,2.05431,-0.610059,0.0354011, -2.47467,2.04557,-0.604408,0.0343687, -2.47053,2.03682,-0.598764,0.0333446, -2.46637,2.02805,-0.593129,0.0323286, -2.4622,2.01927,-0.587503,0.0313207, -2.45802,2.01047,-0.581886,0.0303211, -2.45381,2.00167,-0.576277,0.0293296, -2.4496,1.99285,-0.570678,0.0283464, -2.44537,1.98401,-0.565088,0.0273714, -2.44112,1.97516,-0.559506,0.0264046, -2.43686,1.9663,-0.553934,0.0254461, -2.43259,1.95742,-0.548372,0.0244959, -2.4283,1.94853,-0.542818,0.0235539, -2.424,1.93963,-0.537274,0.0226202, -2.41968,1.93072,-0.53174,0.0216949, -2.41534,1.92179,-0.526216,0.0207778, -2.411,1.91284,-0.520701,0.0198692, -2.40663,1.90389,-0.515196,0.0189689, -2.40225,1.89492,-0.5097,0.0180771, -2.39786,1.88594,-0.504215,0.0171938, -2.39345,1.87694,-0.49874,0.0163189, -2.38903,1.86793,-0.493276,0.0154526, -2.38459,1.85891,-0.487822,0.0145948, -2.38014,1.84988,-0.482378,0.0137456, -2.37567,1.84083,-0.476946,0.0129052, -2.37119,1.83177,-0.471524,0.0120734, -2.36669,1.8227,-0.466113,0.0112504, -2.36217,1.81361,-0.460713,0.0104362, -2.35764,1.80451,-0.455325,0.00963088, -2.3531,1.7954,-0.449949,0.0088345, -2.34854,1.78628,-0.444584,0.00804712, -2.34396,1.77714,-0.439231,0.00726881, -2.33937,1.768,-0.43389,0.00649963, -2.33476,1.75884,-0.428562,0.00573964, -2.33014,1.74966,-0.423246,0.00498893, -2.3255,1.74048,-0.417943,0.00424756, -2.32085,1.73128,-0.412654,0.00351561, -2.31618,1.72208,-0.407377,0.00279317, -2.31149,1.71286,-0.402114,0.0020803, -2.30679,1.70363,-0.396865,0.00137709, -2.30207,1.69438,-0.391629,0.000683629, -2.30207,1.69438,-0.391629,0.000683629 }; #endif // #ifndef WARPX_GODFREY_COEFF_TABLE_H_