diff --git a/test/data/WallTest-integrateWithAdvance.csv b/test/data/WallTest-integrateWithAdvance.csv new file mode 100644 index 000000000..7e8ee34fe --- /dev/null +++ b/test/data/WallTest-integrateWithAdvance.csv @@ -0,0 +1,199 @@ +5.025126e-05, 9.815788e+02, 5.087330e+02, 2.901698e+06, 1.591424e+05, 1.028279e+00, 9.717214e-01 +1.005025e-04, 9.648224e+02, 5.174195e+02, 2.779451e+06, 1.664682e+05, 1.055179e+00, 9.448210e-01 +1.507538e-04, 9.494860e+02, 5.260775e+02, 2.670320e+06, 1.739796e+05, 1.080844e+00, 9.191558e-01 +2.010050e-04, 9.353741e+02, 5.347219e+02, 2.572210e+06, 1.816910e+05, 1.105393e+00, 8.946071e-01 +2.512563e-04, 9.223282e+02, 5.433656e+02, 2.483465e+06, 1.896159e+05, 1.128925e+00, 8.710746e-01 +3.015075e-04, 9.102183e+02, 5.520196e+02, 2.402755e+06, 1.977671e+05, 1.151527e+00, 8.484734e-01 +3.517588e-04, 8.989365e+02, 5.606933e+02, 2.328998e+06, 2.061575e+05, 1.173269e+00, 8.267307e-01 +4.020101e-04, 8.883923e+02, 5.693950e+02, 2.261308e+06, 2.147994e+05, 1.194216e+00, 8.057838e-01 +4.522613e-04, 8.785092e+02, 5.781317e+02, 2.198946e+06, 2.237048e+05, 1.214422e+00, 7.855779e-01 +5.025126e-04, 8.692221e+02, 5.869097e+02, 2.141295e+06, 2.328859e+05, 1.233934e+00, 7.660656e-01 +5.527638e-04, 8.604748e+02, 5.957341e+02, 2.087834e+06, 2.423542e+05, 1.252795e+00, 7.472049e-01 +6.030151e-04, 8.522191e+02, 6.046095e+02, 2.038119e+06, 2.521214e+05, 1.271041e+00, 7.289590e-01 +6.532663e-04, 8.444128e+02, 6.135396e+02, 1.991770e+06, 2.621987e+05, 1.288705e+00, 7.112952e-01 +7.035176e-04, 8.370191e+02, 6.225275e+02, 1.948460e+06, 2.725972e+05, 1.305815e+00, 6.941846e-01 +7.537688e-04, 8.300059e+02, 6.315756e+02, 1.907905e+06, 2.833276e+05, 1.322399e+00, 6.776014e-01 +8.040201e-04, 8.233446e+02, 6.406856e+02, 1.869857e+06, 2.944002e+05, 1.338477e+00, 6.615226e-01 +8.542714e-04, 8.170098e+02, 6.498586e+02, 1.834101e+06, 3.058250e+05, 1.354073e+00, 6.459274e-01 +9.045226e-04, 8.109793e+02, 6.590950e+02, 1.800446e+06, 3.176112e+05, 1.369202e+00, 6.307976e-01 +9.547739e-04, 8.052329e+02, 6.683946e+02, 1.768723e+06, 3.297676e+05, 1.383883e+00, 6.161165e-01 +1.005025e-03, 7.997526e+02, 6.777565e+02, 1.738784e+06, 3.423020e+05, 1.398131e+00, 6.018692e-01 +1.055276e-03, 7.945224e+02, 6.871791e+02, 1.710497e+06, 3.552215e+05, 1.411958e+00, 5.880423e-01 +1.105528e-03, 7.895276e+02, 6.966602e+02, 1.683742e+06, 3.685321e+05, 1.425376e+00, 5.746236e-01 +1.155779e-03, 7.847552e+02, 7.061967e+02, 1.658415e+06, 3.822386e+05, 1.438398e+00, 5.616024e-01 +1.206030e-03, 7.801932e+02, 7.157848e+02, 1.634418e+06, 3.963444e+05, 1.451031e+00, 5.489687e-01 +1.256281e-03, 7.758307e+02, 7.254201e+02, 1.611668e+06, 4.108514e+05, 1.463286e+00, 5.367137e-01 +1.306533e-03, 7.716580e+02, 7.350973e+02, 1.590085e+06, 4.257599e+05, 1.475171e+00, 5.248292e-01 +1.356784e-03, 7.676660e+02, 7.448101e+02, 1.569600e+06, 4.410680e+05, 1.486692e+00, 5.133078e-01 +1.407035e-03, 7.638464e+02, 7.545518e+02, 1.550149e+06, 4.567721e+05, 1.497857e+00, 5.021430e-01 +1.457286e-03, 7.601917e+02, 7.643145e+02, 1.531674e+06, 4.728660e+05, 1.508672e+00, 4.913284e-01 +1.507538e-03, 7.566950e+02, 7.740897e+02, 1.514121e+06, 4.893412e+05, 1.519141e+00, 4.808586e-01 +1.557789e-03, 7.533496e+02, 7.838680e+02, 1.497441e+06, 5.061865e+05, 1.529272e+00, 4.707282e-01 +1.608040e-03, 7.501498e+02, 7.936392e+02, 1.481590e+06, 5.233881e+05, 1.539068e+00, 4.609323e-01 +1.658291e-03, 7.470898e+02, 8.033924e+02, 1.466527e+06, 5.409290e+05, 1.548534e+00, 4.514663e-01 +1.708543e-03, 7.441646e+02, 8.131159e+02, 1.452213e+06, 5.587892e+05, 1.557674e+00, 4.423259e-01 +1.758794e-03, 7.413693e+02, 8.227973e+02, 1.438613e+06, 5.769458e+05, 1.566493e+00, 4.335066e-01 +1.809045e-03, 7.386992e+02, 8.324237e+02, 1.425694e+06, 5.953725e+05, 1.574995e+00, 4.250045e-01 +1.859296e-03, 7.361501e+02, 8.419815e+02, 1.413425e+06, 6.140400e+05, 1.583185e+00, 4.168154e-01 +1.909548e-03, 7.337179e+02, 8.514568e+02, 1.401778e+06, 6.329160e+05, 1.591065e+00, 4.089351e-01 +1.959799e-03, 7.313987e+02, 8.608351e+02, 1.390725e+06, 6.519650e+05, 1.598641e+00, 4.013595e-01 +2.010050e-03, 7.291886e+02, 8.701019e+02, 1.380241e+06, 6.711490e+05, 1.605916e+00, 3.940842e-01 +2.060302e-03, 7.270842e+02, 8.792426e+02, 1.370302e+06, 6.904273e+05, 1.612895e+00, 3.871049e-01 +2.110553e-03, 7.250818e+02, 8.882426e+02, 1.360886e+06, 7.097571e+05, 1.619583e+00, 3.804168e-01 +2.160804e-03, 7.231782e+02, 8.970872e+02, 1.351969e+06, 7.290936e+05, 1.625985e+00, 3.740152e-01 +2.211055e-03, 7.213700e+02, 9.057625e+02, 1.343531e+06, 7.483907e+05, 1.632105e+00, 3.678950e-01 +2.261307e-03, 7.196539e+02, 9.142547e+02, 1.335553e+06, 7.676011e+05, 1.637949e+00, 3.620507e-01 +2.311558e-03, 7.180268e+02, 9.225507e+02, 1.328014e+06, 7.866774e+05, 1.643523e+00, 3.564769e-01 +2.361809e-03, 7.164855e+02, 9.306383e+02, 1.320896e+06, 8.055720e+05, 1.648832e+00, 3.511676e-01 +2.412060e-03, 7.150269e+02, 9.385062e+02, 1.314181e+06, 8.242380e+05, 1.653883e+00, 3.461165e-01 +2.462312e-03, 7.136480e+02, 9.461438e+02, 1.307852e+06, 8.426297e+05, 1.658683e+00, 3.413173e-01 +2.512563e-03, 7.123457e+02, 9.535420e+02, 1.301891e+06, 8.607030e+05, 1.663237e+00, 3.367630e-01 +2.562814e-03, 7.111170e+02, 9.606929e+02, 1.296281e+06, 8.784161e+05, 1.667553e+00, 3.324468e-01 +2.613065e-03, 7.099590e+02, 9.675896e+02, 1.291007e+06, 8.957300e+05, 1.671639e+00, 3.283613e-01 +2.663317e-03, 7.088687e+02, 9.742268e+02, 1.286053e+06, 9.126087e+05, 1.675501e+00, 3.244990e-01 +2.713568e-03, 7.078432e+02, 9.806005e+02, 1.281404e+06, 9.290196e+05, 1.679148e+00, 3.208523e-01 +2.763819e-03, 7.068796e+02, 9.867081e+02, 1.277044e+06, 9.449341e+05, 1.682587e+00, 3.174132e-01 +2.814070e-03, 7.059750e+02, 9.925483e+02, 1.272959e+06, 9.603273e+05, 1.685826e+00, 3.141740e-01 +2.864322e-03, 7.051268e+02, 9.981213e+02, 1.269135e+06, 9.751786e+05, 1.688873e+00, 3.111265e-01 +2.914573e-03, 7.043321e+02, 1.003428e+03, 1.265559e+06, 9.894715e+05, 1.691737e+00, 3.082626e-01 +2.964824e-03, 7.035882e+02, 1.008472e+03, 1.262217e+06, 1.003194e+06, 1.694426e+00, 3.055743e-01 +3.015075e-03, 7.028926e+02, 1.013255e+03, 1.259096e+06, 1.016336e+06, 1.696947e+00, 3.030535e-01 +3.065327e-03, 7.022427e+02, 1.017783e+03, 1.256183e+06, 1.028895e+06, 1.699308e+00, 3.006921e-01 +3.115578e-03, 7.016359e+02, 1.022062e+03, 1.253468e+06, 1.040870e+06, 1.701518e+00, 2.984822e-01 +3.165829e-03, 7.010700e+02, 1.026098e+03, 1.250938e+06, 1.052264e+06, 1.703584e+00, 2.964162e-01 +3.216080e-03, 7.005424e+02, 1.029897e+03, 1.248582e+06, 1.063082e+06, 1.705514e+00, 2.944863e-01 +3.266332e-03, 7.000511e+02, 1.033468e+03, 1.246390e+06, 1.073333e+06, 1.707315e+00, 2.926851e-01 +3.316583e-03, 6.995938e+02, 1.036820e+03, 1.244352e+06, 1.083029e+06, 1.708995e+00, 2.910054e-01 +3.366834e-03, 6.991685e+02, 1.039959e+03, 1.242457e+06, 1.092183e+06, 1.710560e+00, 2.894401e-01 +3.417085e-03, 6.987731e+02, 1.042896e+03, 1.240697e+06, 1.100811e+06, 1.712017e+00, 2.879826e-01 +3.467337e-03, 6.984058e+02, 1.045639e+03, 1.239063e+06, 1.108929e+06, 1.713374e+00, 2.866262e-01 +3.517588e-03, 6.980647e+02, 1.048197e+03, 1.237547e+06, 1.116556e+06, 1.714635e+00, 2.853648e-01 +3.567839e-03, 6.977482e+02, 1.050580e+03, 1.236141e+06, 1.123711e+06, 1.715808e+00, 2.841923e-01 +3.618090e-03, 6.974546e+02, 1.052797e+03, 1.234837e+06, 1.130415e+06, 1.716897e+00, 2.831030e-01 +3.668342e-03, 6.971824e+02, 1.054855e+03, 1.233628e+06, 1.136686e+06, 1.717908e+00, 2.820916e-01 +3.718593e-03, 6.969301e+02, 1.056765e+03, 1.232508e+06, 1.142546e+06, 1.718847e+00, 2.811527e-01 +3.768844e-03, 6.966963e+02, 1.058534e+03, 1.231471e+06, 1.148016e+06, 1.719718e+00, 2.802817e-01 +3.819095e-03, 6.964798e+02, 1.060172e+03, 1.230510e+06, 1.153116e+06, 1.720526e+00, 2.794738e-01 +3.869347e-03, 6.962793e+02, 1.061685e+03, 1.229620e+06, 1.157866e+06, 1.721275e+00, 2.787246e-01 +3.919598e-03, 6.960937e+02, 1.063082e+03, 1.228797e+06, 1.162285e+06, 1.721970e+00, 2.780301e-01 +3.969849e-03, 6.959219e+02, 1.064371e+03, 1.228034e+06, 1.166394e+06, 1.722614e+00, 2.773865e-01 +4.020101e-03, 6.957630e+02, 1.065557e+03, 1.227329e+06, 1.170210e+06, 1.723210e+00, 2.767900e-01 +4.070352e-03, 6.956159e+02, 1.066648e+03, 1.226676e+06, 1.173753e+06, 1.723763e+00, 2.762373e-01 +4.120603e-03, 6.954798e+02, 1.067651e+03, 1.226072e+06, 1.177038e+06, 1.724275e+00, 2.757252e-01 +4.170854e-03, 6.953538e+02, 1.068571e+03, 1.225513e+06, 1.180083e+06, 1.724749e+00, 2.752507e-01 +4.221106e-03, 6.952374e+02, 1.069415e+03, 1.224995e+06, 1.182903e+06, 1.725189e+00, 2.748111e-01 +4.271357e-03, 6.951296e+02, 1.070187e+03, 1.224516e+06, 1.185514e+06, 1.725596e+00, 2.744038e-01 +4.321608e-03, 6.950299e+02, 1.070892e+03, 1.224073e+06, 1.187929e+06, 1.725974e+00, 2.740264e-01 +4.371859e-03, 6.949377e+02, 1.071537e+03, 1.223662e+06, 1.190163e+06, 1.726323e+00, 2.736766e-01 +4.422111e-03, 6.948524e+02, 1.072125e+03, 1.223282e+06, 1.192228e+06, 1.726648e+00, 2.733524e-01 +4.472362e-03, 6.947734e+02, 1.072661e+03, 1.222930e+06, 1.194137e+06, 1.726948e+00, 2.730518e-01 +4.522613e-03, 6.947003e+02, 1.073148e+03, 1.222604e+06, 1.195900e+06, 1.727227e+00, 2.727730e-01 +4.572864e-03, 6.946327e+02, 1.073591e+03, 1.222302e+06, 1.197528e+06, 1.727486e+00, 2.725144e-01 +4.623116e-03, 6.945700e+02, 1.073994e+03, 1.222022e+06, 1.199032e+06, 1.727725e+00, 2.722745e-01 +4.673367e-03, 6.945120e+02, 1.074359e+03, 1.221763e+06, 1.200420e+06, 1.727948e+00, 2.720519e-01 +4.723618e-03, 6.944583e+02, 1.074691e+03, 1.221522e+06, 1.201703e+06, 1.728155e+00, 2.718451e-01 +4.773869e-03, 6.944085e+02, 1.074992e+03, 1.221299e+06, 1.202889e+06, 1.728347e+00, 2.716531e-01 +4.824121e-03, 6.943624e+02, 1.075266e+03, 1.221092e+06, 1.203985e+06, 1.728525e+00, 2.714747e-01 +4.874372e-03, 6.943197e+02, 1.075517e+03, 1.220900e+06, 1.204999e+06, 1.728691e+00, 2.713089e-01 +4.924623e-03, 6.942801e+02, 1.075746e+03, 1.220721e+06, 1.205939e+06, 1.728845e+00, 2.711548e-01 +4.974874e-03, 6.942435e+02, 1.075958e+03, 1.220556e+06, 1.206811e+06, 1.728988e+00, 2.710115e-01 +5.025126e-03, 6.942095e+02, 1.076155e+03, 1.220402e+06, 1.207623e+06, 1.729122e+00, 2.708783e-01 +5.075377e-03, 6.941780e+02, 1.076341e+03, 1.220259e+06, 1.208381e+06, 1.729246e+00, 2.707544e-01 +5.125628e-03, 6.941489e+02, 1.076520e+03, 1.220127e+06, 1.209092e+06, 1.729361e+00, 2.706394e-01 +5.175879e-03, 6.941220e+02, 1.076696e+03, 1.220004e+06, 1.209762e+06, 1.729468e+00, 2.705325e-01 +5.226131e-03, 6.940972e+02, 1.076872e+03, 1.219890e+06, 1.210397e+06, 1.729567e+00, 2.704333e-01 +5.276382e-03, 6.940743e+02, 1.077053e+03, 1.219786e+06, 1.211005e+06, 1.729658e+00, 2.703415e-01 +5.326633e-03, 6.940533e+02, 1.077245e+03, 1.219689e+06, 1.211592e+06, 1.729743e+00, 2.702567e-01 +5.376884e-03, 6.940341e+02, 1.077453e+03, 1.219600e+06, 1.212167e+06, 1.729821e+00, 2.701787e-01 +5.427136e-03, 6.940167e+02, 1.077683e+03, 1.219519e+06, 1.212735e+06, 1.729893e+00, 2.701073e-01 +5.477387e-03, 6.940010e+02, 1.077945e+03, 1.219446e+06, 1.213307e+06, 1.729958e+00, 2.700423e-01 +5.527638e-03, 6.939871e+02, 1.078245e+03, 1.219380e+06, 1.213892e+06, 1.730016e+00, 2.699839e-01 +5.577889e-03, 6.939749e+02, 1.078595e+03, 1.219322e+06, 1.214500e+06, 1.730068e+00, 2.699321e-01 +5.628141e-03, 6.939646e+02, 1.079007e+03, 1.219272e+06, 1.215144e+06, 1.730113e+00, 2.698871e-01 +5.678392e-03, 6.939562e+02, 1.079495e+03, 1.219231e+06, 1.215838e+06, 1.730151e+00, 2.698493e-01 +5.728643e-03, 6.939498e+02, 1.080077e+03, 1.219198e+06, 1.216598e+06, 1.730181e+00, 2.698191e-01 +5.778894e-03, 6.939457e+02, 1.080775e+03, 1.219176e+06, 1.217445e+06, 1.730203e+00, 2.697972e-01 +5.829146e-03, 6.939440e+02, 1.081615e+03, 1.219164e+06, 1.218404e+06, 1.730215e+00, 2.697846e-01 +5.879397e-03, 6.939451e+02, 1.082631e+03, 1.219164e+06, 1.219505e+06, 1.730218e+00, 2.697824e-01 +5.929648e-03, 6.939494e+02, 1.083866e+03, 1.219179e+06, 1.220790e+06, 1.730208e+00, 2.697920e-01 +5.979899e-03, 6.939574e+02, 1.085379e+03, 1.219209e+06, 1.222312e+06, 1.730184e+00, 2.698155e-01 +6.030151e-03, 6.939698e+02, 1.087249e+03, 1.219259e+06, 1.224144e+06, 1.730145e+00, 2.698554e-01 +6.080402e-03, 6.939875e+02, 1.089586e+03, 1.219332e+06, 1.226390e+06, 1.730085e+00, 2.699150e-01 +6.130653e-03, 6.940117e+02, 1.092556e+03, 1.219434e+06, 1.229209e+06, 1.730001e+00, 2.699991e-01 +6.180905e-03, 6.940442e+02, 1.096420e+03, 1.219572e+06, 1.232851e+06, 1.729886e+00, 2.701141e-01 +6.231156e-03, 6.940877e+02, 1.101626e+03, 1.219759e+06, 1.237753e+06, 1.729730e+00, 2.702700e-01 +6.281407e-03, 6.941464e+02, 1.109046e+03, 1.220012e+06, 1.244779e+06, 1.729517e+00, 2.704826e-01 +6.331658e-03, 6.942282e+02, 1.120754e+03, 1.220366e+06, 1.256026e+06, 1.729219e+00, 2.707812e-01 +6.381910e-03, 6.943518e+02, 1.144305e+03, 1.220905e+06, 1.279287e+06, 1.728764e+00, 2.712359e-01 +6.432161e-03, 6.948362e+02, 1.790819e+03, 1.223028e+06, 1.951082e+06, 1.726966e+00, 2.730340e-01 +6.482412e-03, 6.967189e+02, 1.776333e+03, 1.231317e+06, 1.886538e+06, 1.719989e+00, 2.800114e-01 +6.532663e-03, 6.984085e+02, 1.754913e+03, 1.238783e+06, 1.823258e+06, 1.713768e+00, 2.862319e-01 +6.582915e-03, 6.999282e+02, 1.736048e+03, 1.245521e+06, 1.769271e+06, 1.708207e+00, 2.917933e-01 +6.633166e-03, 7.013002e+02, 1.719476e+03, 1.251621e+06, 1.722889e+06, 1.703213e+00, 2.967872e-01 +6.683417e-03, 7.025430e+02, 1.704845e+03, 1.257162e+06, 1.682702e+06, 1.698711e+00, 3.012886e-01 +6.733668e-03, 7.036721e+02, 1.691857e+03, 1.262207e+06, 1.647617e+06, 1.694641e+00, 3.053595e-01 +6.783920e-03, 7.047002e+02, 1.680268e+03, 1.266811e+06, 1.616781e+06, 1.690949e+00, 3.090512e-01 +6.834171e-03, 7.056385e+02, 1.669883e+03, 1.271020e+06, 1.589525e+06, 1.687593e+00, 3.124073e-01 +6.884422e-03, 7.064963e+02, 1.660539e+03, 1.274875e+06, 1.565309e+06, 1.684535e+00, 3.154647e-01 +6.934673e-03, 7.072817e+02, 1.652102e+03, 1.278410e+06, 1.543700e+06, 1.681745e+00, 3.182550e-01 +6.984925e-03, 7.080019e+02, 1.644461e+03, 1.281656e+06, 1.524342e+06, 1.679194e+00, 3.208057e-01 +7.035176e-03, 7.086631e+02, 1.637520e+03, 1.284639e+06, 1.506939e+06, 1.676859e+00, 3.231405e-01 +7.085427e-03, 7.092707e+02, 1.631200e+03, 1.287383e+06, 1.491246e+06, 1.674719e+00, 3.252805e-01 +7.135678e-03, 7.098297e+02, 1.625432e+03, 1.289910e+06, 1.477055e+06, 1.672756e+00, 3.272440e-01 +7.185930e-03, 7.103443e+02, 1.620156e+03, 1.292238e+06, 1.464192e+06, 1.670953e+00, 3.290473e-01 +7.236181e-03, 7.108185e+02, 1.615322e+03, 1.294385e+06, 1.452505e+06, 1.669295e+00, 3.307049e-01 +7.286432e-03, 7.112557e+02, 1.610884e+03, 1.296365e+06, 1.441866e+06, 1.667770e+00, 3.322297e-01 +7.336683e-03, 7.116589e+02, 1.606803e+03, 1.298193e+06, 1.432162e+06, 1.666367e+00, 3.336332e-01 +7.386935e-03, 7.120311e+02, 1.603046e+03, 1.299880e+06, 1.423298e+06, 1.665074e+00, 3.349258e-01 +7.437186e-03, 7.123748e+02, 1.599580e+03, 1.301438e+06, 1.415187e+06, 1.663883e+00, 3.361169e-01 +7.487437e-03, 7.126923e+02, 1.596380e+03, 1.302878e+06, 1.407757e+06, 1.662785e+00, 3.372149e-01 +7.537688e-03, 7.129857e+02, 1.593420e+03, 1.304209e+06, 1.400940e+06, 1.661773e+00, 3.382275e-01 +7.587940e-03, 7.132568e+02, 1.590681e+03, 1.305438e+06, 1.394679e+06, 1.660839e+00, 3.391615e-01 +7.638191e-03, 7.135075e+02, 1.588141e+03, 1.306575e+06, 1.388923e+06, 1.659977e+00, 3.400232e-01 +7.688442e-03, 7.137393e+02, 1.585785e+03, 1.307626e+06, 1.383626e+06, 1.659181e+00, 3.408185e-01 +7.738693e-03, 7.139538e+02, 1.583596e+03, 1.308598e+06, 1.378747e+06, 1.658447e+00, 3.415526e-01 +7.788945e-03, 7.141521e+02, 1.581561e+03, 1.309496e+06, 1.374248e+06, 1.657770e+00, 3.422301e-01 +7.839196e-03, 7.143356e+02, 1.579666e+03, 1.310327e+06, 1.370098e+06, 1.657145e+00, 3.428555e-01 +7.889447e-03, 7.145054e+02, 1.577900e+03, 1.311095e+06, 1.366266e+06, 1.656567e+00, 3.434328e-01 +7.939698e-03, 7.146624e+02, 1.576254e+03, 1.311806e+06, 1.362725e+06, 1.656034e+00, 3.439656e-01 +7.989950e-03, 7.148077e+02, 1.574716e+03, 1.312462e+06, 1.359452e+06, 1.655543e+00, 3.444574e-01 +8.040201e-03, 7.149422e+02, 1.573279e+03, 1.313069e+06, 1.356424e+06, 1.655089e+00, 3.449111e-01 +8.090452e-03, 7.150665e+02, 1.571934e+03, 1.313629e+06, 1.353622e+06, 1.654670e+00, 3.453297e-01 +8.140704e-03, 7.151815e+02, 1.570675e+03, 1.314147e+06, 1.351027e+06, 1.654284e+00, 3.457158e-01 +8.190955e-03, 7.152879e+02, 1.569495e+03, 1.314626e+06, 1.348623e+06, 1.653928e+00, 3.460718e-01 +8.241206e-03, 7.153863e+02, 1.568387e+03, 1.315067e+06, 1.346395e+06, 1.653600e+00, 3.463999e-01 +8.291457e-03, 7.154773e+02, 1.567346e+03, 1.315475e+06, 1.344328e+06, 1.653298e+00, 3.467022e-01 +8.341709e-03, 7.155613e+02, 1.566368e+03, 1.315851e+06, 1.342411e+06, 1.653020e+00, 3.469805e-01 +8.391960e-03, 7.156390e+02, 1.565446e+03, 1.316198e+06, 1.340632e+06, 1.652763e+00, 3.472366e-01 +8.442211e-03, 7.157107e+02, 1.564578e+03, 1.316517e+06, 1.338980e+06, 1.652528e+00, 3.474721e-01 +8.492462e-03, 7.157770e+02, 1.563759e+03, 1.316812e+06, 1.337446e+06, 1.652311e+00, 3.476886e-01 +8.542714e-03, 7.158381e+02, 1.562986e+03, 1.317083e+06, 1.336020e+06, 1.652113e+00, 3.478873e-01 +8.592965e-03, 7.158945e+02, 1.562254e+03, 1.317332e+06, 1.334695e+06, 1.651930e+00, 3.480697e-01 +8.643216e-03, 7.159465e+02, 1.561561e+03, 1.317561e+06, 1.333463e+06, 1.651763e+00, 3.482367e-01 +8.693467e-03, 7.159944e+02, 1.560905e+03, 1.317771e+06, 1.332318e+06, 1.651610e+00, 3.483897e-01 +8.743719e-03, 7.160386e+02, 1.560282e+03, 1.317964e+06, 1.331252e+06, 1.651471e+00, 3.485294e-01 +8.793970e-03, 7.160792e+02, 1.559690e+03, 1.318140e+06, 1.330259e+06, 1.651343e+00, 3.486571e-01 +8.844221e-03, 7.161165e+02, 1.559127e+03, 1.318302e+06, 1.329336e+06, 1.651227e+00, 3.487733e-01 +8.894472e-03, 7.161508e+02, 1.558590e+03, 1.318449e+06, 1.328475e+06, 1.651121e+00, 3.488791e-01 +8.944724e-03, 7.161823e+02, 1.558079e+03, 1.318584e+06, 1.327674e+06, 1.651025e+00, 3.489751e-01 +8.994975e-03, 7.162111e+02, 1.557590e+03, 1.318707e+06, 1.326927e+06, 1.650938e+00, 3.490620e-01 +9.045226e-03, 7.162375e+02, 1.557122e+03, 1.318818e+06, 1.326230e+06, 1.650859e+00, 3.491405e-01 +9.095477e-03, 7.162617e+02, 1.556675e+03, 1.318919e+06, 1.325580e+06, 1.650789e+00, 3.492112e-01 +9.145729e-03, 7.162837e+02, 1.556245e+03, 1.319010e+06, 1.324974e+06, 1.650725e+00, 3.492746e-01 +9.195980e-03, 7.163038e+02, 1.555833e+03, 1.319092e+06, 1.324408e+06, 1.650669e+00, 3.493313e-01 +9.246231e-03, 7.163221e+02, 1.555437e+03, 1.319166e+06, 1.323880e+06, 1.650618e+00, 3.493816e-01 +9.296482e-03, 7.163387e+02, 1.555055e+03, 1.319232e+06, 1.323387e+06, 1.650574e+00, 3.494262e-01 +9.346734e-03, 7.163537e+02, 1.554687e+03, 1.319291e+06, 1.322925e+06, 1.650535e+00, 3.494653e-01 +9.396985e-03, 7.163672e+02, 1.554332e+03, 1.319343e+06, 1.322494e+06, 1.650501e+00, 3.494993e-01 +9.447236e-03, 7.163794e+02, 1.553988e+03, 1.319389e+06, 1.322091e+06, 1.650471e+00, 3.495287e-01 +9.497487e-03, 7.163904e+02, 1.553656e+03, 1.319430e+06, 1.321713e+06, 1.650446e+00, 3.495537e-01 +9.547739e-03, 7.164001e+02, 1.553334e+03, 1.319464e+06, 1.321360e+06, 1.650425e+00, 3.495747e-01 +9.597990e-03, 7.164088e+02, 1.553021e+03, 1.319494e+06, 1.321028e+06, 1.650408e+00, 3.495919e-01 +9.648241e-03, 7.164164e+02, 1.552717e+03, 1.319519e+06, 1.320718e+06, 1.650394e+00, 3.496056e-01 +9.698492e-03, 7.164232e+02, 1.552421e+03, 1.319540e+06, 1.320427e+06, 1.650384e+00, 3.496161e-01 +9.748744e-03, 7.164290e+02, 1.552133e+03, 1.319557e+06, 1.320153e+06, 1.650376e+00, 3.496235e-01 +9.798995e-03, 7.164340e+02, 1.551851e+03, 1.319569e+06, 1.319897e+06, 1.650372e+00, 3.496282e-01 +9.849246e-03, 7.164383e+02, 1.551577e+03, 1.319579e+06, 1.319655e+06, 1.650370e+00, 3.496302e-01 +9.899497e-03, 7.164418e+02, 1.551308e+03, 1.319585e+06, 1.319429e+06, 1.650370e+00, 3.496297e-01 +9.949749e-03, 7.164447e+02, 1.551045e+03, 1.319588e+06, 1.319215e+06, 1.650373e+00, 3.496271e-01 +1.000000e-02, 7.164470e+02, 1.550788e+03, 1.319589e+06, 1.319014e+06, 1.650378e+00, 3.496223e-01 diff --git a/test/python/testReactors.py b/test/python/testReactors.py index fb134b5f2..fc9c9cdd8 100644 --- a/test/python/testReactors.py +++ b/test/python/testReactors.py @@ -106,8 +106,86 @@ class CombustorTestImplementation(object): rtol=1e-6, atol=1e-12) self.assertFalse(bad, bad) -# Keep the implementation separate from the unittest-derived class -# so that it can be run independently to generate the reference data file. -class CombustorTest(CombustorTestImplementation, unittest.TestCase): - pass +class WallTestImplementation(object): + """ + These tests are based on the sample: + + python/reactors/reactor2_sim/reactor2.py + + with some simplifications so that they run faster and produce more + consistent output. + """ + + referenceFile = '../data/WallTest-integrateWithAdvance.csv' + def setUp(self): + # reservoir to represent the environment + self.gas0 = ct.importPhase('../../data/inputs/air.cti') + self.gas0.set(T=300, P=ct.OneAtm) + self.env = reactors.Reservoir(self.gas0) + + # reactor to represent the side filled with Argon + self.gas1 = ct.importPhase('../../data/inputs/air.cti') + self.gas1.set(T=1000.0, P=30*ct.OneAtm, X='AR:1.0') + self.r1 = reactors.Reactor(self.gas1) + + # reactor to represent the combustible mixture + self.gas2 = ct.importPhase('../../data/inputs/h2o2.cti') + self.gas2.set(T=500.0, P=1.5*ct.OneAtm, X='H2:0.5, O2:1.0, AR:10.0') + self.r2 = reactors.Reactor(self.gas2) + + # Wall between the two reactors + self.w1 = reactors.Wall(self.r2, self.r1) + self.w1.set(area=1.0, K=2e-4, U=400.0) + + # Wall to represent heat loss to the environment + self.w2 = reactors.Wall(self.r2, self.env) + self.w2.set(area=1.0, U=2000.0) + + # Create the reactor network + self.sim = reactors.ReactorNet([self.r1, self.r2]) + + def test_integrateWithStep(self): + tnow = 0.0 + tfinal = 0.01 + self.data = [] + while tnow < tfinal: + tnow = self.sim.step(tfinal) + self.data.append([tnow, + self.r1.temperature(), + self.r2.temperature(), + self.r1.pressure(), + self.r2.pressure(), + self.r1.volume(), + self.r2.volume()]) + + self.assertTrue(tnow >= tfinal) + bad = utilities.compareTimeSeries(self.referenceFile, self.data, + rtol=1e-3, atol=1e-8) + self.assertFalse(bad, bad) + + def test_integrateWithAdvance(self, saveReference=False): + times = np.linspace(0, 0.01, 200) + self.data = [] + for t in times[1:]: + self.sim.advance(t) + self.data.append([t, + self.r1.temperature(), + self.r2.temperature(), + self.r1.pressure(), + self.r2.pressure(), + self.r1.volume(), + self.r2.volume()]) + + if saveReference: + np.savetxt(self.referenceFile, np.array(self.data), '%11.6e', ', ') + else: + bad = utilities.compareTimeSeries(self.referenceFile, self.data, + rtol=2e-5, atol=1e-9) + self.assertFalse(bad, bad) + + +# Keep the implementations separate from the unittest-derived class +# so that they can be run independently to generate the reference data files. +class CombustorTest(CombustorTestImplementation, unittest.TestCase): pass +class WallTest(WallTestImplementation, unittest.TestCase): pass