From 73fa126a412cf58a67e0d73501a324f59eaead1a Mon Sep 17 00:00:00 2001 From: Thomas Lichtenegger Date: Wed, 28 Jun 2023 16:35:35 +0200 Subject: [PATCH] Reduction test case. --- .../parCFDDEMrun.sh | 4 +- .../FinesColumnStickyBidisperse/parDEMrun.sh | 2 +- .../parCFDDEMrun.sh | 4 +- .../parDEMrun.sh | 2 +- .../CFD/constant/chemistryProperties | 43 + .../CFD/constant/combustionProperties | 37 + .../CFD/constant/couplingProperties | 242 +++ .../reductionTest/CFD/constant/foam.dat | 165 ++ .../reductionTest/CFD/constant/foam.inp | 12 + .../reductionTest/CFD/constant/g | 22 + .../CFD/constant/liggghtsCommands | 42 + .../reductionTest/CFD/constant/recProperties | 95 + .../CFD/constant/thermophysicalProperties | 52 + .../CFD/constant/transportProperties | 45 + .../CFD/constant/turbulenceProperties | 21 + .../reductionTest/CFD/decomposeParDB.sh | 34 + .../reductionTest/CFD/orig.0/CO | 42 + .../reductionTest/CFD/orig.0/CO2 | 42 + .../reductionTest/CFD/orig.0/Ksl | 42 + .../reductionTest/CFD/orig.0/N2 | 42 + .../reductionTest/CFD/orig.0/T | 41 + .../reductionTest/CFD/orig.0/U | 46 + .../reductionTest/CFD/orig.0/Us | 46 + .../reductionTest/CFD/orig.0/addSource | 42 + .../reductionTest/CFD/orig.0/p | 44 + .../reductionTest/CFD/orig.0/particleForces | 39 + .../reductionTest/CFD/orig.0/voidfraction | 43 + .../reductionTest/CFD/system/blockMeshDict | 267 +++ .../reductionTest/CFD/system/blockMeshDict.m4 | 267 +++ .../reductionTest/CFD/system/controlDict | 57 + .../reductionTest/CFD/system/decomposeParDict | 31 + .../reductionTest/CFD/system/fvOptions | 32 + .../reductionTest/CFD/system/fvSchemes | 93 + .../reductionTest/CFD/system/fvSolution | 150 ++ .../reductionTest/DEM/DEMparameters | 30 + .../reductionTest/DEM/in.chemistry | 32 + .../reductionTest/DEM/in.coupling_integration | 23 + .../DEM/in.liggghts_dataDrivenCFD | 42 + .../reductionTest/DEM/in.liggghts_init | 93 + .../reductionTest/DEM/in.material_parameters | 12 + .../reductionTest/DEM/in.monitor | 15 + .../reductionTest/DEM/in.output | 93 + .../reductionTest/DEM/liggghts.restart | Bin 0 -> 281746 bytes .../reductionTest/DEM/monitor/.gitkeep | 0 .../reductionTest/README | 10 + .../reductionTest/mass_layer_opt.dat | 801 ++++++++ .../reductionTest/mesh.sh | 8 + .../reductionTest/parCFDDEMrun.sh | 27 + .../reductionTest/parDEMrun.sh | 29 + .../target_mass_loss_pellets.txt | 1668 +++++++++++++++++ 50 files changed, 5065 insertions(+), 6 deletions(-) create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/chemistryProperties create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/combustionProperties create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/couplingProperties create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/foam.dat create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/foam.inp create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/g create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/liggghtsCommands create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/recProperties create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/thermophysicalProperties create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/transportProperties create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/turbulenceProperties create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/decomposeParDB.sh create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/CO create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/CO2 create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/Ksl create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/N2 create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/T create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/U create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/Us create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/addSource create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/p create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/particleForces create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/voidfraction create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/blockMeshDict create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/blockMeshDict.m4 create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/controlDict create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/decomposeParDict create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvOptions create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvSchemes create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvSolution create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/DEMparameters create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.chemistry create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.coupling_integration create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.liggghts_dataDrivenCFD create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.liggghts_init create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.material_parameters create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.monitor create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.output create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/liggghts.restart create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/monitor/.gitkeep create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/README create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/mass_layer_opt.dat create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/mesh.sh create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/parCFDDEMrun.sh create mode 100755 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/parDEMrun.sh create mode 100644 tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/target_mass_loss_pellets.txt diff --git a/tutorials/cfdemSolverRhoPimple/FinesColumnStickyBidisperse/parCFDDEMrun.sh b/tutorials/cfdemSolverRhoPimple/FinesColumnStickyBidisperse/parCFDDEMrun.sh index 6514ca69..114a8a03 100755 --- a/tutorials/cfdemSolverRhoPimple/FinesColumnStickyBidisperse/parCFDDEMrun.sh +++ b/tutorials/cfdemSolverRhoPimple/FinesColumnStickyBidisperse/parCFDDEMrun.sh @@ -2,8 +2,8 @@ #===================================================================# # CFD-DEM run script for FinesColumn testcase -# init FinesColumn -# Thomas Lichtenegger - January 2017 +# run FinesColumn +# Thomas Lichtenegger - June 2023 #===================================================================# #- source CFDEM env vars diff --git a/tutorials/cfdemSolverRhoPimple/FinesColumnStickyBidisperse/parDEMrun.sh b/tutorials/cfdemSolverRhoPimple/FinesColumnStickyBidisperse/parDEMrun.sh index 43f0cadf..85e05ab2 100755 --- a/tutorials/cfdemSolverRhoPimple/FinesColumnStickyBidisperse/parDEMrun.sh +++ b/tutorials/cfdemSolverRhoPimple/FinesColumnStickyBidisperse/parDEMrun.sh @@ -3,7 +3,7 @@ #===================================================================# # DEM run script for FinesColumn testcase # init FinesColumn -# Thomas Lichtenegger - January 2017 +# Thomas Lichtenegger - June 2023 #===================================================================# #- source CFDEM env vars diff --git a/tutorials/cfdemSolverRhoPimple/FinesColumnStickyMonodisperse/parCFDDEMrun.sh b/tutorials/cfdemSolverRhoPimple/FinesColumnStickyMonodisperse/parCFDDEMrun.sh index b584c904..5514f4b7 100755 --- a/tutorials/cfdemSolverRhoPimple/FinesColumnStickyMonodisperse/parCFDDEMrun.sh +++ b/tutorials/cfdemSolverRhoPimple/FinesColumnStickyMonodisperse/parCFDDEMrun.sh @@ -2,8 +2,8 @@ #===================================================================# # CFD-DEM run script for FinesColumn testcase -# init FinesColumn -# Thomas Lichtenegger - January 2017 +# run FinesColumn +# Thomas Lichtenegger - June 2023 #===================================================================# #- source CFDEM env vars diff --git a/tutorials/cfdemSolverRhoPimple/FinesColumnStickyMonodisperse/parDEMrun.sh b/tutorials/cfdemSolverRhoPimple/FinesColumnStickyMonodisperse/parDEMrun.sh index 43f0cadf..85e05ab2 100755 --- a/tutorials/cfdemSolverRhoPimple/FinesColumnStickyMonodisperse/parDEMrun.sh +++ b/tutorials/cfdemSolverRhoPimple/FinesColumnStickyMonodisperse/parDEMrun.sh @@ -3,7 +3,7 @@ #===================================================================# # DEM run script for FinesColumn testcase # init FinesColumn -# Thomas Lichtenegger - January 2017 +# Thomas Lichtenegger - June 2023 #===================================================================# #- source CFDEM env vars diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/chemistryProperties b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/chemistryProperties new file mode 100644 index 00000000..fe5b84f2 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/chemistryProperties @@ -0,0 +1,43 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object chemistryProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +//chemistry off; + +chemistryType +{ + solver ode; +} + +chemistry on; + +initialChemicalTimeStep 1e-07; + +EulerImplicitCoeffs +{ + cTauChem 0.05; + equilibriumRateLimiter off; +} + +odeCoeffs +{ + solver seulex; + absTol 1e-8; + relTol 1e-1; +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/combustionProperties b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/combustionProperties new file mode 100644 index 00000000..ecec7ca7 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/combustionProperties @@ -0,0 +1,37 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object combustionProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// OF5 -> OF6: noCombustion<> -> none (template parameters are no longer required) +//combustionModel noCombustion; //PaSR; //PaSR; +combustionModel none; // OF6 + +active false; //true; + +//noCombustionCoeffs +noneCoeffs +{ +} + + +PaSRCoeffs +{ + Cmix 1.0; + turbulentReaction off; +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/couplingProperties b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/couplingProperties new file mode 100755 index 00000000..6e3562df --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/couplingProperties @@ -0,0 +1,242 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.4 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object couplingProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +//===========================================================================// +// sub-models & settings + +modelType "A"; + +couplingInterval 1; + +voidFractionModel divided; + +locateModel engine;//turboEngine;// + +meshMotionModel noMeshMotion; + +regionModel allRegion; + +IOModel "off"; + +dataExchangeModel twoWayMPI; + +averagingModel dense; + +clockModel standardClock; + +smoothingModel off; + +probeModel off; + +forceModels +( + freeStreaming + BeetstraDrag + gradPForce + viscForce +); + +momCoupleModels +( + implicitCouple +); + +otherForceModels +( +); + +energyModels +( + heatTransferGunn + reactionHeat +); + +thermCondModel SyamlalThermCond; + +chemistryModels +( + species + diffusionCoefficients + massTransferCoeff +); + +turbulenceModelType "turbulenceProperties"; + +coupleRecFluc false; +coupleRecForce false; + +//===========================================================================// +// sub-model properties + +freeStreamingProps +{ + critVoidfraction 1.5; + // density can be chosen arbitrarily + particleDensity 667; + ballisticVelLimit 0.0; + // operational descent velocity + scalingFactor 110.04; + interpolation true; +} + + +implicitCoupleProps +{ + velFieldName "U"; + granVelFieldName "Us"; + voidfractionFieldName "voidfraction"; +} + +explicitCoupleProps +{ + fLimit (1e3 1e3 1e3); +} + +dSauterProps +{ + +} +gradPForceProps +{ + pFieldName "p"; + densityFieldName "rho"; + voidfractionFieldName "voidfraction"; + velocityFieldName "U"; +} + +GidaspowDragProps +{ + verbose false; + velFieldName "U"; + granVelFieldName "Us"; + voidfractionFieldName "voidfraction"; + interpolation true; + phi 1; +} + +heatTransferGunnProps +{ + partTempName "Temp"; + partHeatFluxName "convectiveHeatFlux"; + calcPartTempField false; + partRefTemp 293; + interpolation false; +} + +viscForceProps +{ + velocityFieldName "U"; + densityFieldName "rho"; + interpolation; +} + +BeetstraDragProps +{ + velFieldName "U"; + granVelFieldName "Us"; + densityFieldName "rho"; + voidfractionFieldName "voidfraction"; +} + +gravityProps +{ +} + +SyamlalThermCondProps +{ +} + +centreProps +{ + alphaMin 0.10; +} + +engineProps +{ + treeSearch true; +} + +turboEngineProps +{ + treeSearch true; +} + +dividedProps +{ + alphaMin 0.25; + scaleUpVol 1.0; + weight 1.0; //1.33; + verbose; +} + +constDiffSmoothingProps +{ + verbose; + lowerLimit 0.25; + upperLimit 1.0; + smoothingLength 0.006; +} + +twoWayMPIProps +{ + maxNumberOfParticles 50000; + liggghtsPath "../DEM/in.liggghts_dataDrivenCFD"; +} + + +particleProbeProps +{ + particleIDsToSample "0"; +} + +speciesProps +{ + ChemistryFile "$FOAM_CASE/constant/foam.inp"; + Nevery 1; + verbose false; + interpolation false; +} + +diffusionCoefficientsProps +{ + verbose false; + interpolation false; + ChemistryFile "$FOAM_CASE/constant/foam.inp"; + diffusantGasNames ( + CO CO2 + ); +} + +massTransferCoeffProps +{ + verbose false; + interpolation false; +} + +reactionHeatProps +{ +} + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/foam.dat b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/foam.dat new file mode 100644 index 00000000..631bbb1d --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/foam.dat @@ -0,0 +1,165 @@ +/*--------------------------------*- C++ -*----------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | Website: https://openfoam.org + \\ / A nd | Version: 6 + \\/ M anipulation | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object foam.dat; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +CO +{ + specie + { + molWeight 28.0106; + } + thermodynamics + { + Tlow 200; + Thigh 3500; + Tcommon 1000; + highCpCoeffs ( 2.71519 0.00206253 -9.98826e-07 2.30053e-10 -2.03648e-14 -14151.9 7.81869 ); + lowCpCoeffs ( 3.57953 -0.000610354 1.01681e-06 9.07006e-10 -9.04424e-13 -14344.1 3.50841 ); + } + transport + { + As 1.67212e-06; + Ts 170.672; + } +} + +CO2 +{ + specie + { + molWeight 44.01; + } + thermodynamics + { + Tlow 0; + Thigh 5000; + Tcommon 1000; + highCpCoeffs ( 3.85746 0.00441437 -2.21481e-06 5.2349e-10 -4.72084e-14 -48759.2 2.27164 ); + lowCpCoeffs ( 2.35677 0.0089846 -7.12356e-06 2.45919e-09 -1.437e-13 -48372 9.90105 ); + } + transport + { + As 1.67212e-06; + Ts 170.6; + } +} + +CH4 +{ + specie + { + molWeight 16.043; + } + thermodynamics + { + Tlow 0; + Thigh 5000; + Tcommon 1000; + highCpCoeffs ( 0.0748515 0.0133909 -5.73286e-06 1.22293e-09 -1.01815e-13 -9468.34 18.4373 ); + lowCpCoeffs ( 5.14988 -0.013671 4.91801e-05 -4.84743e-08 1.66694e-11 -10246.6 -4.6413 ); + } + transport + { + As 1.67212e-06; + Ts 170.672; + } +} + +H2 +{ + specie + { + molWeight 2.01594; + } + thermodynamics + { + Tlow 0; + Thigh 5000; + Tcommon 1000; + highCpCoeffs ( 3.33728 -4.94025e-05 4.99457e-07 -1.79566e-10 2.00255e-14 -950.159 -3.20502 ); + lowCpCoeffs ( 2.34433 0.00798052 -1.94782e-05 2.01572e-08 -7.37612e-12 -917.935 0.68301 ); + } + transport + { + As 1.67212e-06; + Ts 170.672; + } +} + +H2O +{ + specie + { + molWeight 18.0153; + } + thermodynamics + { + Tlow 0; + Thigh 5000; + Tcommon 1000; + highCpCoeffs ( 3.03399 0.00217692 -1.64073e-07 -9.7042e-11 1.68201e-14 -30004.3 4.96677 ); + lowCpCoeffs ( 4.19864 -0.00203643 6.5204e-06 -5.48797e-09 1.77198e-12 -30293.7 -0.849032 ); + } + transport + { + As 1.67212e-06; + Ts 170.672; + } +} + +O2 +{ + specie + { + molWeight 31.9988; + } + thermodynamics + { + Tlow 0; + Thigh 5000; + Tcommon 1000; + highCpCoeffs ( 3.28254 0.00148309 -7.57967e-07 2.09471e-10 -2.16718e-14 -1088.46 5.45323 ); + lowCpCoeffs ( 3.78246 -0.00299673 9.8473e-06 -9.6813e-09 3.24373e-12 -1063.94 3.65768 ); + } + transport + { + As 1.67212e-06; + Ts 170.672; + } +} + +N2 +{ + specie + { + molWeight 28.0134; + } + thermodynamics + { + Tlow 0; + Thigh 5000; + Tcommon 1000; + highCpCoeffs ( 2.92664 0.00148798 -5.68476e-07 1.0097e-10 -6.75335e-15 -922.798 5.98053 ); + lowCpCoeffs ( 3.29868 0.00140824 -3.96322e-06 5.64152e-09 -2.44485e-12 -1020.9 3.95037 ); + } + transport + { + As 1.67212e-06; + Ts 170.672; + } +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/foam.inp b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/foam.inp new file mode 100644 index 00000000..77a83ba0 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/foam.inp @@ -0,0 +1,12 @@ +species +( + CO + CO2 + N2 +); + +reactions +{ +} + + diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/g b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/g new file mode 100755 index 00000000..317bdd50 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/g @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class uniformDimensionedVectorField; + location "constant"; + object g; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -2 0 0 0 0]; +value ( 0 0 -9.81 ); + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/liggghtsCommands b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/liggghtsCommands new file mode 100755 index 00000000..148b23b3 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/liggghtsCommands @@ -0,0 +1,42 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.4 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object liggghtsCommands; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +liggghtsCommandModels +( + runLiggghts + writeLiggghts +); +// ************************************************************************* // + +/*runLiggghtsProps +{ + preNo false; +} + +writeLiggghtsProps +{ + writeLast off; + overwrite off; +}*/ diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/recProperties b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/recProperties new file mode 100755 index 00000000..9c5cccbd --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/recProperties @@ -0,0 +1,95 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.4 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object recProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +//===========================================================================// +// sub-models & settings + + +recModel standardRecModel; + +recNorm EuclideanNorm; + +//recPath predefinedPath; +//recPath MarkovPath; +recPath noPath; + +volScalarFields +( + voidfraction +); + +volVectorFields +( + Us +); + +surfaceScalarFields +( + // phi +); + +//verbose true; + +//couplingSubStep 1; + +initialRecSteps 20000; //10; + + +//===========================================================================// +// sub-model properties + +standardRecModelProps +{ + dataBases (dataBase); + storeAveragedFields true; + timeDilationFactor 1.0; //130.0; +} + +EuclideanNormProps +{ + fieldType "volScalarField"; + // fieldName "partType"; + fieldName "voidfraction"; +} + +MarkovPathProps +{ + correlationSteps 0; + meanIntervalSteps 1; + minIntervalSteps 1; + intervalWeights (1.0); +} + +predefinedPathProps +{ + recPathName "predefRecurrencePath"; +} + +noPathProps +{ +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/thermophysicalProperties b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/thermophysicalProperties new file mode 100644 index 00000000..6628cbac --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/thermophysicalProperties @@ -0,0 +1,52 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object thermophysicalProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +/* +thermoType +{ + type heRhoThermo; //hePsiThermo; + mixture reactingMixture; //species and reactions are listed in chemistry file + transport const; //sutherland; //calcualtes viscosity as a function of temperature from Stuherland coefficient As and Ts + thermo hConst; //janaf; + equationOfState perfectGas; + energy sensibleInternalEnergy; //sensibleEnthalpy; + specie specie; +} +*/ + +thermoType +{ + type heRhoThermo; + mixture reactingMixture; + transport sutherland; + thermo janaf; + energy sensibleInternalEnergy; //sensibleEnthalpy; + equationOfState perfectGas; + specie specie; +} + + +chemistryReader foamChemistryReader; + +foamChemistryThermoFile "$FOAM_CASE/constant/foam.dat"; + +foamChemistryFile "$FOAM_CASE/constant/foam.inp"; + +inertSpecie N2; + +inertLowerBound 0.2; + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/transportProperties b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/transportProperties new file mode 100644 index 00000000..b0eb45e4 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/transportProperties @@ -0,0 +1,45 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object transportProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +transportModel Newtonian; + +nu nu [ 0 2 -1 0 0 0 0 ] 1e-05; + +kf kf [ 1 1 -3 -1 0 0 0 ] 0.026; + +Cp Cp [ 0 2 -2 -1 0 0 0 ] 1005; + +Cv Cv [ 0 2 -2 -1 0 0 0 ] 718; + +CrossPowerLawCoeffs +{ + nu0 nu0 [ 0 2 -1 0 0 0 0 ] 1e-06; + nuInf nuInf [ 0 2 -1 0 0 0 0 ] 1e-06; + m m [ 0 0 1 0 0 0 0 ] 1; + n n [ 0 0 0 0 0 0 0 ] 1; +} + +BirdCarreauCoeffs +{ + nu0 nu0 [ 0 2 -1 0 0 0 0 ] 1e-06; + nuInf nuInf [ 0 2 -1 0 0 0 0 ] 1e-06; + k k [ 0 0 1 0 0 0 0 ] 0; + n n [ 0 0 0 0 0 0 0 ] 1; +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/turbulenceProperties b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/turbulenceProperties new file mode 100644 index 00000000..b2fc0a43 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/constant/turbulenceProperties @@ -0,0 +1,21 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType laminar; + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/decomposeParDB.sh b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/decomposeParDB.sh new file mode 100755 index 00000000..740146a8 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/decomposeParDB.sh @@ -0,0 +1,34 @@ +#!/bin/sh +# Source run functions +. $WM_PROJECT_DIR/bin/tools/RunFunctions + +if [ $# -eq 0 ] + then + dBname="dataBase" + else + dBname=$1 +fi + +#rm log.decomposePar +#runApplication decomposePar -force + +cpdirs="system constant" +for f in $cpdirs +do + cp -r $f $dBname/$f +done +cd $dBname +rm log.decomposePar +runApplication decomposePar -force -time 0: + +rm -rf $cpdirs +rm -rf processor*/constant + +for proc in processor* +do + echo "Transferring decomposed recurrence fields of $dBname/$proc to $proc." + rm -r ../$proc/$dBname + mkdir ../$proc/$dBname + mv $proc/* ../$proc/$dBname/ + rm -rf $proc +done diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/CO b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/CO new file mode 100755 index 00000000..f25b94a8 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/CO @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object CO; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0.4; + +boundaryField +{ + outlet + { + type zeroGradient; + } + + walls + { + type zeroGradient; + } + + inlet + { + type fixedValue; + value uniform 0.4; + } +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/CO2 b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/CO2 new file mode 100755 index 00000000..8638fd72 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/CO2 @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object CO2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0.3; + +boundaryField +{ + outlet + { + type zeroGradient; + } + + walls + { + type zeroGradient; + } + + inlet + { + type fixedValue; + value uniform 0.0; + } +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/Ksl b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/Ksl new file mode 100755 index 00000000..c6c06fb4 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/Ksl @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object Ksl; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 -3 -1 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + walls + { + type zeroGradient; + } + + inlet + { + type zeroGradient; + } + + outlet + { + type zeroGradient; + } + +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/N2 b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/N2 new file mode 100755 index 00000000..aa13ddf4 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/N2 @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object N2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0.60; + +boundaryField +{ + outlet + { + type zeroGradient; + } + + walls + { + type zeroGradient; + } + + inlet + { + type fixedValue; + value uniform 0.60; + } +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/T b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/T new file mode 100755 index 00000000..e485064c --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/T @@ -0,0 +1,41 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object T; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 1 0 0 0]; + +internalField uniform 1223; + +boundaryField +{ + walls + { + type fixedValue; + value uniform 1223; + } + + inlet + { + type fixedValue; + value uniform 1223; + } + + outlet + { + type zeroGradient; + } +} + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/U b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/U new file mode 100644 index 00000000..e920040a --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/U @@ -0,0 +1,46 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform (0 0 0); + +boundaryField +{ + walls + { + //type slip; + type uniformFixedValue; + uniformValue constant (0 0 0); + } + + // ratio of crosssection to inlet currently 1.25, need to scale superficial velocity accordingly + inlet + { + type flowRateInletVelocity; + massFlowRate constant 0.00105; + rhoInlet 0.5; + } + + + outlet + { + type zeroGradient; + } +} + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/Us b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/Us new file mode 100755 index 00000000..c44672e0 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/Us @@ -0,0 +1,46 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object Us; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform (0 0 0); + +boundaryField +{ + walls + { + type zeroGradient; + } + + bottom + { + type zeroGradient; + } + + inlet + { + type zeroGradient; + } + + outlet + { + type zeroGradient; + } +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/addSource b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/addSource new file mode 100644 index 00000000..c7b35d43 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/addSource @@ -0,0 +1,42 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object addSource; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 -1 -3 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + walls + { + type zeroGradient; + value uniform 0; + } + + inlet + { + type zeroGradient; + value uniform 0; + } + outlet + { + type zeroGradient; + value uniform 0; + } +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/p b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/p new file mode 100644 index 00000000..17b97e3b --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/p @@ -0,0 +1,44 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object p; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 -1 -2 0 0 0 0]; + +internalField uniform 1e5; + +boundaryField +{ + walls + { + // type zeroGradient; + type fixedFluxPressure; + } + + inlet + { + type zeroGradient; + // type fixedFluxExtrapolatedPressure; + //type fixedFluxPressure; + // value uniform 1.03e5; + } + + outlet + { + type uniformFixedValue; + uniformValue constant 1e5; + } +} + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/particleForces b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/particleForces new file mode 100755 index 00000000..37ded0ae --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/particleForces @@ -0,0 +1,39 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + object particleForces; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [2 -5 -2 0 0 0 0]; + +internalField uniform (0 0 0); + +boundaryField +{ + walls + { + type zeroGradient; + } + + inlet + { + type zeroGradient; + } + + outlet + { + type zeroGradient; + } +} + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/voidfraction b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/voidfraction new file mode 100755 index 00000000..66037164 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/orig.0/voidfraction @@ -0,0 +1,43 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object voidfraction; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 1; + +boundaryField +{ + walls + { + type zeroGradient; + } + + inlet + { + type fixedValue; + value uniform 1.0; + } + + outlet + { + type fixedValue; + value uniform 1.0; + } +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/blockMeshDict b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/blockMeshDict new file mode 100644 index 00000000..1b763758 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/blockMeshDict @@ -0,0 +1,267 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | | +| \\ / A nd | Copyright (C) 2016 Ehsan Madadi-Kandjani | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// General macros to create cylinder mesh + + + + + + + + + + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +convertToMeters 1.0; + +// Inner square side half + + +// Inner square side curvature + + +// cylinder radius + + +// Height of cylinder + + +// Base z + + +// Outlet z + + +// Number of cells at inner square + + +// Number of cells between inner square and circle + + +// Number of cells in the cylinder height + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + + + +// 45 degree points angle + + + + + +// Half of 45 degree points angle + + + + + + + + + + + + + + + + + + + + + + + + + +// Inner square x and y position + +// x + + + + + +// y + + + + + +// Circle x and y positions + +// x + + + + + +// y + + + + + +// Inner square x and y position middle curvatures + +// x + + + + + +// y + + + + + +// Circle x and y positions middle curvatures + +// x + + + + + +// y + + + + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +vertices +( + (0.02 -0.02 0) // Vertex s0b = 0 + (-0.02 -0.02 0) // Vertex s1b = 1 + (-0.02 0.02 0) // Vertex s2b = 2 + (0.02 0.02 0) // Vertex s3b = 3 + + (0.0353553390593274 -0.0353553390593274 0) // Vertex r0b = 4 + (-0.0353553390593274 -0.0353553390593274 0) // Vertex r1b = 5 + (-0.0353553390593274 0.0353553390593274 0) // Vertex r2b = 6 + (0.0353553390593274 0.0353553390593274 0) // Vertex r3b = 7 + + (0.02 -0.02 0.2) // Vertex s0t = 8 + (-0.02 -0.02 0.2) // Vertex s1t = 9 + (-0.02 0.02 0.2) // Vertex s2t = 10 + (0.02 0.02 0.2) // Vertex s3t = 11 + + (0.0353553390593274 -0.0353553390593274 0.2) // Vertex r0t = 12 + (-0.0353553390593274 -0.0353553390593274 0.2) // Vertex r1t = 13 + (-0.0353553390593274 0.0353553390593274 0.2) // Vertex r2t = 14 + (0.0353553390593274 0.0353553390593274 0.2) // Vertex r3t = 15 +); + +blocks +( + //block0 + hex (1 0 3 2 9 8 11 10) + square + (6 6 20) + simpleGrading (1 1 1) + + //block1 + hex (0 4 7 3 8 12 15 11) + innerCircle + (4 6 20) + simpleGrading (0.5 1 1) + + //block2 + hex (3 7 6 2 11 15 14 10) + innerCircle + (4 6 20) + simpleGrading (0.5 1 1) + + //block3 + hex (2 6 5 1 10 14 13 9) + innerCircle + (4 6 20) + simpleGrading (0.5 1 1) + + //block4 + hex (1 5 4 0 9 13 12 8) + innerCircle + (4 6 20) + simpleGrading (0.5 1 1) +); + +edges +( + //Circle edges + arc 7 4 (0.05 0 0) + arc 4 5 (3.06161699786839e-18 -0.05 0) + arc 5 6 (-0.05 6.12323399573675e-18 0) + arc 6 7 (3.06161699786839e-18 0.05 0) + + //Circle edges + arc 15 12 (0.05 0 0.2) + arc 12 13 (3.06161699786839e-18 -0.05 0.2) + arc 13 14 (-0.05 6.12323399573675e-18 0.2) + arc 14 15 (3.06161699786839e-18 0.05 0.2) + + arc 3 0 (0.025 0 0) + arc 0 1 (0 -0.025 0) + arc 1 2 (-0.025 0 0) + arc 2 3 (0 0.025 0) + + arc 11 8 (0.025 0 0.2) + arc 8 9 (0 -0.025 0.2) + arc 9 10 (-0.025 0 0.2) + arc 10 11 (0 0.025 0.2) + +); + +patches +( + wall walls + ( + (4 7 15 12) + (5 4 12 13) + (6 5 13 14) + (7 6 14 15) + ) + + patch inlet + ( + (3 0 1 2) + (3 7 4 0) + (2 6 7 3) + (1 5 6 2) + (0 4 5 1) + ) + + patch outlet + ( + (11 10 9 8) + (11 8 12 15) + (10 11 15 14) + (9 10 14 13) + (8 9 13 12) + ) +); + +mergePatchPairs +( +); diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/blockMeshDict.m4 b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/blockMeshDict.m4 new file mode 100644 index 00000000..b09d8535 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/blockMeshDict.m4 @@ -0,0 +1,267 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | | +| \\ / A nd | Copyright (C) 2016 Ehsan Madadi-Kandjani | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + `format' ascii; + class dictionary; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// General macros to create cylinder mesh + +changecom(//)changequote([,]) +define(calc, [esyscmd(perl -e 'use Math::Trig; print ($1)')]) +define(VCOUNT, 0) +define(vlabel, [[// ]Vertex $1 = VCOUNT define($1, VCOUNT)define([VCOUNT], incr(VCOUNT))]) + +define(hex2D, hex ($1b $2b $3b $4b $1t $2t $3t $4t)) +define(btQuad, ($1b $2b $2t $1t)) +define(topQuad, ($1t $4t $3t $2t)) +define(bottomQuad, ($1b $2b $3b $4b)) + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +convertToMeters 1.0; + +// Inner square side half +define(s, 0.02) + +// Inner square side curvature +define(sc, 0.025) + +// cylinder radius +define(r, 0.05) + +// Height of cylinder +define(z, 0.2) + +// Base z +define(Zb, 0) + +// Outlet z +define(Zt, calc(Zb + z)) + +// Number of cells at inner square +define(Ns, 6) + +// Number of cells between inner square and circle +define(Ni, 4) + +// Number of cells in the cylinder height +define(Nz, 20) + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +define(vert, (x$1$2 y$1$2 $3)) +define(evert, (ex$1$2 ey$1$2 $3)) + +// 45 degree points angle +define(a0, -45) +define(a1, -135) +define(a2, 135) +define(a3, 45) + +// Half of 45 degree points angle +define(ea0, 0) +define(ea1, -90) +define(ea2, 180) +define(ea3, 90) + +define(ca0, calc(cos((pi/180)*a0))) +define(ca1, calc(cos((pi/180)*a1))) +define(ca2, calc(cos((pi/180)*a2))) +define(ca3, calc(cos((pi/180)*a3))) + +define(sa0, calc(sin((pi/180)*a0))) +define(sa1, calc(sin((pi/180)*a1))) +define(sa2, calc(sin((pi/180)*a2))) +define(sa3, calc(sin((pi/180)*a3))) + +define(cea0, calc(cos((pi/180)*ea0))) +define(cea1, calc(cos((pi/180)*ea1))) +define(cea2, calc(cos((pi/180)*ea2))) +define(cea3, calc(cos((pi/180)*ea3))) + +define(sea0, calc(sin((pi/180)*ea0))) +define(sea1, calc(sin((pi/180)*ea1))) +define(sea2, calc(sin((pi/180)*ea2))) +define(sea3, calc(sin((pi/180)*ea3))) + +// Inner square x and y position + +// x +define(x00, s) +define(x01, calc(-1.0*s)) +define(x02, calc(-1.0*s)) +define(x03, s) + +// y +define(y00, calc(-1.0*s)) +define(y01, calc(-1.0*s)) +define(y02, s) +define(y03, s) + +// Circle x and y positions + +// x +define(x10, calc(r*ca0)) +define(x11, calc(r*ca1)) +define(x12, calc(r*ca2)) +define(x13, calc(r*ca3)) + +// y +define(y10, calc(r*sa0)) +define(y11, calc(r*sa1)) +define(y12, calc(r*sa2)) +define(y13, calc(r*sa3)) + +// Inner square x and y position middle curvatures + +// x +define(ex00, sc) +define(ex01, 0) +define(ex02, calc(-1.0*sc)) +define(ex03, 0) + +// y +define(ey00, 0) +define(ey01, calc(-1.0*sc)) +define(ey02, 0) +define(ey03, sc) + +// Circle x and y positions middle curvatures + +// x +define(ex10, calc(r*cea0)) +define(ex11, calc(r*cea1)) +define(ex12, calc(r*cea2)) +define(ex13, calc(r*cea3)) + +// y +define(ey10, calc(r*sea0)) +define(ey11, calc(r*sea1)) +define(ey12, calc(r*sea2)) +define(ey13, calc(r*sea3)) + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +vertices +( + vert(0, 0, Zb) vlabel(s0b) + vert(0, 1, Zb) vlabel(s1b) + vert(0, 2, Zb) vlabel(s2b) + vert(0, 3, Zb) vlabel(s3b) + + vert(1, 0, Zb) vlabel(r0b) + vert(1, 1, Zb) vlabel(r1b) + vert(1, 2, Zb) vlabel(r2b) + vert(1, 3, Zb) vlabel(r3b) + + vert(0, 0, Zt) vlabel(s0t) + vert(0, 1, Zt) vlabel(s1t) + vert(0, 2, Zt) vlabel(s2t) + vert(0, 3, Zt) vlabel(s3t) + + vert(1, 0, Zt) vlabel(r0t) + vert(1, 1, Zt) vlabel(r1t) + vert(1, 2, Zt) vlabel(r2t) + vert(1, 3, Zt) vlabel(r3t) +); + +blocks +( + //block0 + hex2D(s1, s0, s3, s2) + square + (Ns Ns Nz) + simpleGrading (1 1 1) + + //block1 + hex2D(s0, r0, r3, s3) + innerCircle + (Ni Ns Nz) + simpleGrading (0.5 1 1) + + //block2 + hex2D(s3, r3, r2, s2) + innerCircle + (Ni Ns Nz) + simpleGrading (0.5 1 1) + + //block3 + hex2D(s2, r2, r1, s1) + innerCircle + (Ni Ns Nz) + simpleGrading (0.5 1 1) + + //block4 + hex2D(s1, r1, r0, s0) + innerCircle + (Ni Ns Nz) + simpleGrading (0.5 1 1) +); + +edges +( + //Circle edges + arc r3b r0b evert(1, 0, Zb) + arc r0b r1b evert(1, 1, Zb) + arc r1b r2b evert(1, 2, Zb) + arc r2b r3b evert(1, 3, Zb) + + //Circle edges + arc r3t r0t evert(1, 0, Zt) + arc r0t r1t evert(1, 1, Zt) + arc r1t r2t evert(1, 2, Zt) + arc r2t r3t evert(1, 3, Zt) + + arc s3b s0b evert(0, 0, Zb) + arc s0b s1b evert(0, 1, Zb) + arc s1b s2b evert(0, 2, Zb) + arc s2b s3b evert(0, 3, Zb) + + arc s3t s0t evert(0, 0, Zt) + arc s0t s1t evert(0, 1, Zt) + arc s1t s2t evert(0, 2, Zt) + arc s2t s3t evert(0, 3, Zt) + +); + +patches +( + wall walls + ( + btQuad(r0, r3) + btQuad(r1, r0) + btQuad(r2, r1) + btQuad(r3, r2) + ) + + patch inlet + ( + bottomQuad(s3, s0, s1, s2) + bottomQuad(s3, r3, r0, s0) + bottomQuad(s2, r2, r3, s3) + bottomQuad(s1, r1, r2, s2) + bottomQuad(s0, r0, r1, s1) + ) + + patch outlet + ( + topQuad(s3, s0, s1, s2) + topQuad(s3, r3, r0, s0) + topQuad(s2, r2, r3, s3) + topQuad(s1, r1, r2, s2) + topQuad(s0, r0, r1, s1) + ) +); + +mergePatchPairs +( +); diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/controlDict b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/controlDict new file mode 100644 index 00000000..1f8e15b2 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/controlDict @@ -0,0 +1,57 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +application potentialFoam; + +startFrom startTime; + +startTime 0; + +stopAt endTime; + +endTime 8000; + +deltaT 0.125; + +writeControl timeStep; + +writeInterval 100000000; + +purgeWrite 0; + +writeFormat ascii; + +writePrecision 6; + +writeCompression off; + +timeFormat general; + +timePrecision 6; + +runTimeModifiable true; + + +functions +{ + moleFrac + { + type rhoReactionThermoMoleFractions; + } +} + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/decomposeParDict b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/decomposeParDict new file mode 100644 index 00000000..e39a11c3 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/decomposeParDict @@ -0,0 +1,31 @@ +/*-------------------------------*- C++ -*---------------------------------*\ +| ========= | +| \\ / OpenFOAM | +| \\ / | +| \\ / The Open Source CFD Toolbox | +| \\/ http://www.OpenFOAM.org | +\*-------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + note "mesh decomposition control dictionary"; + location "system"; + object decomposeParDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +numberOfSubdomains 8; + +method scotch; + +simpleCoeffs +{ + n (1 1 8); + delta 0.001; +} + +// ************************************************************************* // + diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvOptions b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvOptions new file mode 100644 index 00000000..cc95b6ea --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvOptions @@ -0,0 +1,32 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvOptions; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// OF 6 + +source1 +{ + type limitTemperature; + active yes; + limitTemperatureCoeffs + { + active yes; + selectionMode all; + min 1222; + max 1224; + } +} + diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvSchemes b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvSchemes new file mode 100644 index 00000000..6f001b8e --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvSchemes @@ -0,0 +1,93 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default Euler; +} + +gradSchemes +{ + default Gauss linear; + grad(p) cellLimited Gauss linear 1; + // grad(U) Gauss linear; + grad(U) cellLimited Gauss linear 1; +} + +divSchemes +{ + default Gauss linear; + div(phi,U) Gauss upwind; + div(phi,k) Gauss limitedLinear 1; + div(phi,epsilon) Gauss limitedLinear 1; + div(phi,R) Gauss limitedLinear 1; + div(R) Gauss linear; + div(phi,nuTilda) Gauss limitedLinear 1; + div((viscousTerm*dev(grad(U).T()))) Gauss linear; + div((nu*dev(grad(U).T()))) Gauss linear; + div(phi,Yi_h) Gauss multivariateSelection + { + CO limitedLinear01 1; + H2 limitedLinear01 1; + N2 limitedLinear01 1; + H2O limitedLinear01 1; + CO2 limitedLinear01 1; + O2 limitedLinear01 1; + h limitedLinear 1; + e limitedLinear 1; + } + div((nuEff*dev(grad(U).T()))) Gauss linear; + +} + +laplacianSchemes +{ + /* + default Gauss linear corrected; + laplacian(viscousTerm,U) Gauss linear corrected; + laplacian(nu,U) Gauss linear corrected; + laplacian(nuEff,U) Gauss linear corrected; + laplacian((1|A(U)),p) Gauss linear corrected; + laplacian((voidfraction2|A(U)),p) Gauss linear corrected; + laplacian(DkEff,k) Gauss linear corrected; + laplacian(DepsilonEff,epsilon) Gauss linear corrected; + laplacian(DREff,R) Gauss linear corrected; + laplacian(DnuTildaEff,nuTilda) Gauss linear corrected; + */ + default Gauss linear limited 0.333; +} + +interpolationSchemes +{ + default linear; + interpolate(U) linear; +} + +snGradSchemes +{ + // default corrected; + default limited 0.333; +} + +fluxRequired +{ + default no; + p ; +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvSolution b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvSolution new file mode 100644 index 00000000..09d7d97a --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/CFD/system/fvSolution @@ -0,0 +1,150 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + "(p|rho|correctedField|partTemp)" + { + solver PCG; + preconditioner DIC; + tolerance 1e-7; + relTol 1e-2; + } + + "(p|rho|correctedField|partTemp)Final" + { + $p; + relTol 0; + } + + "(U|k|e|epsilon|R|nuTilda|c)" + { + solver smoothSolver; + smoother GaussSeidel; + tolerance 1e-8; + relTol 1e-2; + } + + "(U|e|k|nuTilda)Final" + { + $U; + relTol 0; + } + + "(Yi|CO|CO2|H2|H2O|O2|N2)" + { + solver smoothSolver; + smoother symGaussSeidel; + tolerance 1e-07; + relTol 0.01; + maxIter 100; + } + + "(Yi|CO|CO2|H2|H2O|O2|N2)Final" + { + $Yi; + tolerance 1e-06; + relTol 0; + maxIter 100; + } + + T + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-7; + relTol 0; + } + + + + "(voidfraction|Ksl|UsNext|voidfractionNext|sSmoothField|vSmoothField|fSmooth)" + { + solver PCG; + preconditioner DIC; + tolerance 1e-09; + relTol 1e-06; + } +} + +PIMPLE +{ + momentumPredictor yes; + nOuterCorrectors 10; + nCorrectors 1; + nNonOrthogonalCorrectors 0; + rhoMin rhoMin [ 1 -3 0 0 0 ] 0.1; + rhoMax rhoMax [ 1 -3 0 0 0 ] 5.0; + + pMin pMin [ 1 -1 -2 0 0 ] 90000; + pMax pMax [ 1 -1 -2 0 0 ] 500000; + +// pMin 90000; +// pMax 500000; + + UMax UMax [ 0 1 -1 0 0 ] 250; +} + +PISO +{ + nCorrectors 4; + nNonOrthogonalCorrectors 1; + pRefCell 0; + pRefValue 0; +} + +relaxationFactors +{ + fields + { + U 0.3; + p 0.3; + UFinal 0.3; + pFinal 0.3; + CO 0.3; + COFinal 0.3; + CO2 0.3; + CO2Final 0.3; + O2 0.3; + O2Final 0.3; + N2 0.3; + N2Final 0.3; + e 0.3; + he 0.3; + eFinal 0.3; + heFinal 0.3; + } + equations + { +// CO 0.3; +// COFinal 0.3; +// CO2 0.3; +// CO2Final 0.3; +// O2 0.3; +// O2Final 0.3; +// N2 0.3; +// N2Final 0.3; +// e 0.3; +// he 0.3; +// eFinal 0.3; +// heFinal 0.3; + ".*" 0.3; + } +} + + +// ************************************************************************* // diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/DEMparameters b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/DEMparameters new file mode 100644 index 00000000..20d276c3 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/DEMparameters @@ -0,0 +1,30 @@ +# DEM-parameters +variable partDens equal 3300 # density +variable partDensHeavy equal 8000 # density +#variable partRad equal 0.001 # particle radius +variable partRad equal 0.0055 # particle radius +variable partVol equal 4*3.14/3*${partRad}^3 +variable yM equal 5.e6 # Young's modulus +variable pR equal 0.25 # Poisson ratio +variable rest equal 0.66 # coefficient of restitution +variable fric equal 0.95 # coefficient of friction +variable roll equal 0.15 # for particles and walls with friction +variable noRoll equal 0 # for frictionless walls +variable cV equal 0.1 # characteristic velocity + +variable Tpart equal 298 + +variable dt equal 0.125 +variable skin equal 0.005 + +# particle settling loop parameters +variable vthre equal 0.0001 + +# Geometry +variable cylrad equal 0.0415 + +variable fillH equal 0.35 +variable fillH1 equal ${fillH}-0.025 +variable fillH2 equal ${fillH1}+2*0.0024 +variable fillV equal ${fillH}*${cylrad}^2*3.14 +variable nPart equal ceil(${fillV}*0.7/${partVol}) diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.chemistry b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.chemistry new file mode 100644 index 00000000..10aa3855 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.chemistry @@ -0,0 +1,32 @@ +# particle properties +##################### + +# ore +# obtain H volume fraction from initial particle density (fully unreduced); then compute volume fractions for inner layers according to Kinaci et al. CES 227 (2020) [ATTENTION: correct conversion factors are q_HM = 0.9666, q_MW = 0.9309, q_WFe = 0.7773]; set porosities = 1 - volume fraction + +#fix porosity_ore all property/atom porosity_ore vector yes no no 0.61 0.34 0.19 0.17 # values for ore in Kinaci et al. CES 227 (2020), corresponding to rho = 4300 for hematite +fix porosity_ore all property/global porosity_ore vector 0.71 0.48 0.38 0.37 +fix tortuosity_ore all property/global tortuosity_ore scalar 3 +fix pore_diameter_ore all property/global pore_diameter_ore vector 3.e-07 1.75e-05 1.1e-05 +fix layerDensities_ore all property/global density_ore vector 7870. 5740. 5170. 5240. + + +# define layer properties +fix LayerRelRadii all property/atom relRadii vector yes no no 1.0 0.998 0.995 0.98 + +# define fix for rho_eff and fracRed - initialize as zero +fix fracRed all property/atom fracRed vector yes no no 0. 0. 0. +fix rhoeff all property/atom rhoeff vector yes no no 0. 0. 0. 0. + +# define fix for mass layer - initial testing +fix LayerMasses all property/atom massLayer vector yes no no 0. 0. 0. 0. + + +# ore reactions +############### +# Activate for 3-layer unreacted core shrink model +fix chem0 ore chem/shrink/core speciesA CO molMassA 0.02801 speciesC CO2 molMassC 0.04401 nevery 1 screen no cg 1 limit_reactant_consumption no + +# Material properties for chemical reaction +fix k0_chem0 ore property/global k0_chem0 vector 10 18 3700 +fix Ea_chem0 ore property/global Ea_chem0 vector 69488 73674 113859 diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.coupling_integration b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.coupling_integration new file mode 100644 index 00000000..4f7143c1 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.coupling_integration @@ -0,0 +1,23 @@ +############## +# cfd coupling +############## +variable Tin equal 1223 + +#### +# uncomment if molten iron to be pictured as trickling particles +#variable vtrickle equal -0.05 +#fix execSetV all execute ${Ncouple} "set group fullyDeformed property/atom vrec 0.0 0.0 ${vtrickle}" start_of_step +##### + +fix cfd all couple/cfd couple_every 1 mpi +fix cfd1 all couple/cfd/force transfer_force no transfer_torque no transfer_density yes transfer_type yes # transfer_property name effvolfactor type scalar-atom +fix cfd1b all couple/cfd/recurrence transfer_force no transfer_fluctuations no +fix cfd2 all couple/cfd/convection T0 ${Tin} transfer_conduction no max_change 1.0 +fix cfd3 all couple/cfd/parttempfield T0 ${Tin} +fix cfd4 all couple/cfd/chemistry n_species 3 species_names CO CO2 N2 n_diff 2 diffusant_names CO CO2 transfer_reactant no init_layer_radii no + + +#fix integr all nve/sphere/limit vlimit 0.05 omegalimit 100 + +run 0 +velocity all set 0.0 0.0 0.0 diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.liggghts_dataDrivenCFD b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.liggghts_dataDrivenCFD new file mode 100755 index 00000000..ba710515 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.liggghts_dataDrivenCFD @@ -0,0 +1,42 @@ + +## material properties +include ../DEM/DEMparameters + +############################################### +atom_style granular +atom_modify map array +communicate single vel yes + +boundary f f f +newton off +units si + +processors 1 1 8 + +# option B +read_restart ../DEM/liggghts.restart + +group dummy type 1 +group ore type 2 + +reset_timestep 0 + + +neighbor ${skin} bin +neigh_modify delay 0 +group fullyDeformed empty +neigh_modify exclude group fullyDeformed all + +timestep 0.125 + +include ../DEM/in.material_parameters +include ../DEM/in.chemistry +include ../DEM/in.coupling_integration +#include ../DEM/in.output +include ../DEM/in.monitor + +######## +# limits +######## +# particle temperatures +fix limTpart all limit/property/atom Temp min 1222 max 1224 diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.liggghts_init b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.liggghts_init new file mode 100755 index 00000000..74798cbd --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.liggghts_init @@ -0,0 +1,93 @@ +############################################### +# material properties +include ../DEM/DEMparameters + +############################################### + +atom_style granular +atom_modify map array +communicate single vel yes + +boundary f f f +newton off +units si +#processors 1 1 8 + +region reg block -${cylrad} ${cylrad} -${cylrad} ${cylrad} 0.0 0.45 units box +create_box 2 reg + +neighbor 0.001 bin +neigh_modify delay 0 + +#Material properties required for granular pair styles + +fix m1 all property/global youngsModulus peratomtype ${yM} ${yM} +fix m2 all property/global poissonsRatio peratomtype ${pR} ${pR} +fix m3 all property/global coefficientRestitution peratomtypepair 2 ${rest} ${rest} ${rest} ${rest} +fix m4 all property/global coefficientFriction peratomtypepair 2 ${fric} ${fric} ${fric} ${fric} +fix m5 all property/global coefficientRollingFriction peratomtypepair 2 ${roll} ${roll} ${roll} ${roll} +fix m6 all property/global characteristicVelocity scalar ${cV} + +#pair style +pair_style gran model hertz tangential history rolling_friction cdt +pair_coeff * * + +#timestep, gravity +timestep 0.00001 +fix gravi all gravity 9.81 vector 0.0 0.0 -1.0 + +fix zwall1 all wall/gran model hertz tangential history primitive type 1 zplane 0.0 +#fix zwall2 all wall/gran model hertz tangential history primitive type 1 zplane 1.3 +fix cylwalls all wall/gran model hertz tangential history primitive type 1 zcylinder ${cylrad} 0. 0. + +fix integr all nve/sphere + +#fix ts_check all check/timestep/gran 10000 0.1 0.1 + +#screen output +compute rke all erotate/sphere +thermo_style custom step atoms ke c_rke vol +thermo 5000 +thermo_modify lost ignore norm no +compute_modify thermo_temp dynamic yes + +fix pts1 all particletemplate/sphere 1 atom_type 1 density constant ${partDens} radius constant ${partRad} +fix pdd1 all particledistribution/discrete 1.0 1 pts1 1.0 +fix pts2 all particletemplate/sphere 1 atom_type 2 density constant ${partDens} radius constant ${partRad} +fix pdd2 all particledistribution/discrete 1.0 1 pts2 1.0 + + +region insReg0 cylinder z 0. 0. ${cylrad} 0.0 0.05 units box +fix ins0 all insert/pack/dense seed 123 region insReg0 distributiontemplate pdd1 volumefraction_region 0.57 +run 1 + +region insReg1 cylinder z 0. 0. ${cylrad} 0.055 0.25 units box +fix ins1 all insert/pack seed 1001 distributiontemplate pdd2 insert_every once overlapcheck yes mass_in_region 0.5 region insReg1 ntry_mc 10000 +run 1 + +region insReg2 cylinder z 0. 0. ${cylrad} 0.26 0.4 units box +fix ins2 all insert/pack/dense seed 123 region insReg2 distributiontemplate pdd1 volumefraction_region 0.57 +run 1 + + +#====================================================================== +#- settling + +variable vcmx equal vcm(all,x) +variable vcmy equal vcm(all,y) +variable vcmz equal vcm(all,z) + +variable vave equal sqrt(v_vcmx*v_vcmx+v_vcmy*v_vcmy+v_vcmz*v_vcmz) +print ${vave} + +run 1000000 + +#====================================================================== +region delReg block -${cylrad} ${cylrad} -${cylrad} ${cylrad} 0.2 INF units box +run 1 every 1 "delete_atoms region delReg" +fix zwall2 all wall/gran model hertz tangential history primitive type 1 zplane 0.2 +run 5000 +run 1 every 1 "delete_atoms region delReg" +run 5000 +write_restart liggghts.restart +write_dump all custom/vtk ../DEM/finalState.vtk id type radius mass density x y z diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.material_parameters b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.material_parameters new file mode 100644 index 00000000..462dff86 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.material_parameters @@ -0,0 +1,12 @@ +fix m1 all property/global youngsModulus peratomtype ${yM} ${yM} +fix m2 all property/global poissonsRatio peratomtype ${pR} ${pR} +fix m3 all property/global coefficientRestitution peratomtypepair 2 ${rest} ${rest} ${rest} ${rest} +fix m4 all property/global coefficientFriction peratomtypepair 2 ${fric} ${fric} ${fric} ${fric} +fix m5 all property/global coefficientRollingFriction peratomtypepair 2 ${roll} ${roll} ${roll} ${roll} +fix m6 all property/global characteristicVelocity scalar ${cV} + +fix ftco all property/global thermalConductivity peratomtype 1.7 80 +# constant Cp +#fix ftca all property/global thermalCapacity peratomtype 850 850 600 600 1.0 +# variable Cp +fix ftca all property/atom thermalCapacity scalar yes no no 600 diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.monitor b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.monitor new file mode 100644 index 00000000..e62c3a65 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.monitor @@ -0,0 +1,15 @@ +variable time equal time + +variable m1 equal mass(ore) +print 'initial mass = ${m1}' +compute layermasses all reduce sum f_LayerMasses[1] f_LayerMasses[2] f_LayerMasses[3] f_LayerMasses[4] +fix layermasses all ave/time 1 1 1 c_layermasses[1] c_layermasses[2] c_layermasses[3] c_layermasses[4] +variable lmass1 equal f_layermasses[1] +variable lmass2 equal f_layermasses[2] +variable lmass3 equal f_layermasses[3] +variable lmass4 equal f_layermasses[4] +variable lmasstot equal f_layermasses[1]+f_layermasses[2]+f_layermasses[3]+f_layermasses[4] + +fix printmasslayer all print 80 "${time} ${m1} ${lmass1} ${lmass2} ${lmass3} ${lmass4} ${lmasstot}" & + file ../DEM/monitor/mass_layer.dat title "#time mass lmass1 lmass2 lmass3 lmass4 lmass_{tot}" screen no + diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.output b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.output new file mode 100644 index 00000000..4352da35 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/in.output @@ -0,0 +1,93 @@ +######## +# output +######## + +#compute 1 all erotate/sphere +#thermo_style custom step atoms ke c_1 vol c_csumMT +#thermo 100 +#thermo_modify lost ignore norm no +#compute_modify thermo_temp dynamic yes + + +# average particle temperature +############################## + +variable time equal step*dt +variable currStep equal step +region total block INF INF INF INF INF INF units box +variable np equal count(all,total) +compute sumtemp all reduce/region total sum f_Temp[0] +variable sumT1 equal c_sumtemp +variable Tave equal v_sumT1/v_np + +# mass-weighted temperature +########################### + +variable mT atom mass*f_Temp +compute csumMT all reduce sum v_mT +variable sumMT equal c_csumMT +variable totMass equal mass(all) +variable TaveM equal v_sumMT/v_totMass + +fix printheat all print ${Nmonitor} "${time} ${Tave} ${TaveM}" append ${dumppath}/monitor/temp_ave.txt title "#time T_ave T_ave_mass" + + +# chemistry output +################## + +variable nore equal count(ore) +variable ncoke equal count(coke) + +## Check Layer Radii and Write them to files ### +compute layerRadO1 ore reduce sum f_LayerRelRadii[1] +fix redRadO1 ore ave/time 1 1 1 c_layerRadO1 +variable rrO1 equal f_redRadO1/v_nore + +compute layerRadO2 ore reduce sum f_LayerRelRadii[2] +fix redRadO2 ore ave/time 1 1 1 c_layerRadO2 +variable rrO2 equal f_redRadO2/v_nore + +compute layerRadO3 ore reduce sum f_LayerRelRadii[3] +fix redRadO3 ore ave/time 1 1 1 c_layerRadO3 +variable rrO3 equal f_redRadO3/v_nore + +compute layerRadO4 ore reduce sum f_LayerRelRadii[4] +fix redRadO4 ore ave/time 1 1 1 c_layerRadO4 +variable rrO4 equal f_redRadO4/v_nore + +compute layerRadC1 coke reduce sum f_LayerRelRadii[1] +fix redRadC1 coke ave/time 1 1 1 c_layerRadC1 +variable rrC1 equal f_redRadC1/v_ncoke + +compute layerRadC2 coke reduce sum f_LayerRelRadii[2] +fix redRadC2 coke ave/time 1 1 1 c_layerRadC2 +variable rrC2 equal f_redRadC2/v_ncoke + +variable reductionDegree atom 1./9.*f_fracRed[1]+2./9.*f_fracRed[2]+6./9.*f_fracRed[3] + + +fix printRelRadiiOre all print ${Nmonitor} "${time} ${rrO1} ${rrO2} ${rrO3} ${rrO4}" append ${dumppath}/post/relRadiiOre.txt title "#time relRadO_1 relRadO_2 relRadO_3 relRadO_4" +fix printRelRadiiCoke all print ${Nmonitor} "${time} ${rrC1} ${rrC2}" append ${dumppath}/post/relRadiiCoke.txt title "#time relRadC_1 relRadC_2" + +# dump data +########### + +dump dmp1 all custom/vtk ${Ndump} ${dumppath}/post/dump*.dataDrivenCFD.vtk id type radius x y z vx vy vz fx fy fz mass f_Temp[0] f_convectiveHeatFlux[0] f_fracRed[1] f_fracRed[2] f_fracRed[3] f_LayerRelRadii[1] f_LayerRelRadii[2] f_LayerRelRadii[3] f_LayerRelRadii[4] f_Aterm_chem0[1] f_Aterm_chem0[2] f_Aterm_chem0[3] f_Bterm_chem0[1] f_Bterm_chem0[2] f_Bterm_chem0[3] f_Massterm_chem0[0] f_Aterm_chem1[1] f_Aterm_chem1[2] f_Aterm_chem1[3] f_Bterm_chem1[1] f_Bterm_chem1[2] f_Bterm_chem1[3] f_Massterm_chem1[0] f_Aterm_chem2[0] f_Bterm_chem2[0] f_Massterm_chem2[0] f_Aterm_chem3[0] f_Bterm_chem3[0] f_Massterm_chem3[0] f_Aterm_chem4[0] f_Bterm_chem4[0] f_Massterm_chem4[0] f_Aterm_chem5[0] f_Bterm_chem5[0] f_Massterm_chem5[0] f_heatFlux[0] f_conductiveHeatFlux[0] v_reductionDegree f_reactionHeat[0] + +dump dmp2 coke custom ${Nrestart} ${dumppath}/restart/dump*.relRadii1 id type x y z f_LayerRelRadii[1] f_LayerRelRadii[2] f_LayerRelRadii[3] f_LayerRelRadii[4] +dump dmp3 finecoke custom ${Nrestart} ${dumppath}/restart/dump*.relRadii2 id type x y z f_LayerRelRadii[1] f_LayerRelRadii[2] f_LayerRelRadii[3] f_LayerRelRadii[4] +dump dmp4 ore custom ${Nrestart} ${dumppath}/restart/dump*.relRadii3 id type x y z f_LayerRelRadii[1] f_LayerRelRadii[2] f_LayerRelRadii[3] f_LayerRelRadii[4] +dump dmp5 fineore custom ${Nrestart} ${dumppath}/restart/dump*.relRadii4 id type x y z f_LayerRelRadii[1] f_LayerRelRadii[2] f_LayerRelRadii[3] f_LayerRelRadii[4] +dump dmp6 all custom ${Nrestart} ${dumppath}/restart/initFullState* id type radius mass density x y z + +compute 1 all erotate/sphere +thermo_style custom step atoms ke c_1 vol c_csumMT c_cm1 c_cm2 c_cm3 c_cm4 c_cTi c_cTgi c_cCOi c_cCO2i +thermo 100 +thermo_modify lost ignore norm no +compute_modify thermo_temp dynamic yes + + +#dump dmp7 ore custom ${Ndump} ${dumppath}/post/dump*.ore id type radius x y z mass density f_LayerRelRadii[1] f_LayerRelRadii[2] f_LayerRelRadii[3] f_LayerRelRadii[4] f_LayerMasses[1] f_LayerMasses[2] f_LayerMasses[3] f_LayerMasses[4] f_fp[0] f_ftca[0] +#dump dmp8 coke custom ${Ndump} ${dumppath}/post/dump*.coke id type radius x y z mass density f_fp[0] f_ftca[0] + +#dump dmp9 fineore custom ${Ndump} ${dumppath}/post/dump*.fineore id type radius x y z mass density f_LayerRelRadii[1] f_LayerRelRadii[2] f_LayerRelRadii[3] f_LayerRelRadii[4] f_LayerMasses[1] f_LayerMasses[2] f_LayerMasses[3] f_LayerMasses[4] f_fp[0] f_ftca[0] f_reactionHeat[0] diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/liggghts.restart b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/liggghts.restart new file mode 100644 index 0000000000000000000000000000000000000000..80bec21b7a3fdf028ff89f1e21d9f49b9c26ecf8 GIT binary patch literal 281746 zcmb@v30O^C`#*k~M>LTsLI^2oK(y8gX_6^JQdAm5D$ONHDIsZ6kw(c7O31u+q%t-s zQfbgggXW^>cY3UKdanQbo`2{4UiNj>y*vBtz1RNS!&-aYpL<24(P)v3pY4{8PB!*- z((84!w6wIh8Z6$lPG5SdqP(J_ob+D%gAO*fmKM@Wmn>CUyhL@e;?l*6%hXg<)KnCu z%{`s}(DjDqEVVsHmze*{f=1 zwRGjHqJ#uReef>=a(o2=3H`u!}?xm?56+Xt#$k#@GMlK5h@{=@=800gTn+z2ZA-`0z=+%b$7%mv+aq6PTgxL~{x6UIUp^Xfmj7tM ze{cB6Mfr$R_^hF~UU>6tN39Fo6+Er^rDhV<{UugvNwEis&N&Go` za!uZTT@Ff_e--Mu`4i+9UMb(GkPXQF@MZqHVBpq%&m?xzi9iah47>D7GM-Y~B3#wj z?*d6XSm8F~ZFcsV0Ead4jl7QU;Gn7&FBYw zP~zktTp74cI8A$GW?zQJcOBwI+4pe!NwY=hWbePr|HN%0pSR81#(Z!b-Ck5u=a-QHBKo9tgkWd$H47??(a5pp9nZjc-6yO z5ph&)TVvyAQCB$98IEkMaLaai`R&el9(e577nUyJg^y~hCEA8dar^(Yfzh4P$=-jLqqvQ9+#?$m zc`95e=mFr4pSMuhAOt-XfA~|aH4YGa`{~nrrgIVvx&}*Z>*y#%N`;L}9EACqdi--0 z7QY#|ot;$hRF=hwQ_p24EZ)oO#>6dkXTndbkq zy^RcjMz#>+byJ<1OF>i6)XrOORlspv>8u%xdJyS{&CaiCSU9Z@*nbWT^|7l4Jy8#T zIoB8C`;MU}A5FTy?fE!&wODFbwY18tj7Vz5W#5~df$KlL;K==1;U=#9WWmj<@2FLx zYC(`n9EjC@di;aO8D%THB3s?A9o65 zgjg+6JD&?CE9c#rzx^4S`{#nR(7tr7o$EN^Yel)+1?}IEb<_*9?^mmVB0fGxG)-wA zy&I)YIJrwVq6$q3^5AUXdWi2g7Oq-!i8qmxG#2@gE|wJtAz62-_nV8Pbhx!}KW~b=w-bz*Y}q@(^1~5RO;&eEO2l5#?qE8x6#r+r_*MHu8`?wEw}bt&=PK)YP>hv$kRG^kKfX7WmqW&GP@qv=7v?*
kqHyKS0S#FXHLG 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 z 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 z z4rbd|&Q8K%a9!I=L8e~x3hpe_>pWWb49R`d$w!HO(;QT9^-!4#{ zi@Ut?J@jbj;oum*-$yvEGpg3}cQ+~D!{_Yv5~RCB@Es*VD#R(`zv>L(e_*~Gg86b7 z=F748&*46+)q$5D;DsHzi+5^b=J}WVRT#G%hq}o#O5&5gZ25baKCx%%ZnMhk^w}kA z-ak=Hp$Jbw^dgbyCNtIDV|8&4df@vl!6%Z&;u9tBeh9B-Tc0(mFQujBYtvzePq@g0 zYEktweYc7lNsUoHkDeE#A)jDw6N0%-28z(cd`C6K;(aO~mk{v&$P=uEtdXh+VHS+OW5K&!?nqF)(NDnK; zRfFLxe4drE)ph&&vu;T%lxRkMRQc-;0ov@jzR7{L%((;q`SUOJ?Ej;F6D}3_O9cES z0{)W4GXv*`f%C(_`LTEe;6yNRA{aOk>;}Hc4}>c7-b_X_$M;O>$%$l0Nfpc$<>QPbQQ&+!R zuT8bywQ`^NiSv1jkJ5v?ckN8YiMH8aWil$U2$!p2xH;+1jOP1x&;{o9A(-2TVQwF~ z3D+0DU-aUZZ3RksSN!{u^C!Hozhb9)Ruc+=>zaxc4W9!#(fEO1)t0#lNN4ENGl$?3 z4)a}sF)sL1yT-C>%)Y2C_o8xJdVM`3cEZ&Zif|-EPZEi)Cynkc+$~g%T9dYqJh)wl z_T7`TsaG#!t82LQ_TGetd#Hj$%W3t8%;-Z}`?Yi$OgOH;|Ktg~zen%ak$n-kR191y z0xp%sMFAg!fset!$6y!GHKVgf`G3jqIj4$#hc9r35 z+@@D>ycB=T_*^r2Yd43wt1u2*Mo2EIzD9d%Z4r7gSC`&3F!_Yf))b0xS43|TiSABc z&iy^^SC0hrt#uou8?boQRLx~|KiJlp;9T<^t1Na?T&^2#I^H}=iH+$0t??eK_pFZg z9Z3C#xq1lZ>S36x$EqX1lVRY=5b$Iy9soEE1e^u}P6H7hpxiC|ZNj5OlpB0u-$<_y zQhQjra$yqlITP?L`lHp_q8yb;JA9KB z{e+4|^5hTeb3TVmf>(O?mEWOsY}C!gClA_FTvwMjo$yPcNWY5sMI!NScJ->KyJO!V zOUt97iuN>;_Uqm>Tc@0@Z`G#8XT}F?qF1jIRn<3S&>`7DL6Y^Hzki@||LP+eH^cCj zY0K7x8l~c=pU*tl-$I^eAFV@#dxAMJ2Ngc`fw-`bZwHctB<(O ze6HH!@vhU4GI3Dc-L*R`A~{?S%(;5U1`JD(CH+oCNx9?gU+|Ep8K)o8j=yrkc|wDLNDO@ zhPji?#{CXQ6LYu}zjDRkq@Y@D;k_{&>aN6~c1yP=a9^d)iXJ9AQ(MzYntYtFIny-S#LF64~g2Yi}9`@fN0 z(OIfGM)iO6^QsQ$0$eHrE)@fp%9%m>>-pN0Y1opX63WswOjqj&Wq>o4ZAd&boscO>Y*qon8 z@Pf;+KT1`|WHz6~0-d*PeeuwlZ>!sBLD%9i6k<+v@eiZ*El(s{p&e&bblbc z6>vouxFQT(5z80gFfec!7&r{pbJNhj#L&M)(7!~4OR6aFTj1E^h4y_vJ9X(w8nrug zW^_qeV_)#)qs#Dv_>;A`K{WRb@6$xYi10bCWmL%WE%O0ydb&;?<{c+>z zN$qWsT&s|uLfOFgCw`Gge9IDQ?08~7hzvu0xNo->WA$e;`ui(t+4{!y{7~j2J`t+A zpzn5z8KM)v@zgDRAT>t5jrLCoUkO|*00vrbdjspY7!Q!6MYt-wvC`I7f z$bGZ;9Fmc-#B=;t-YlJ^(0_NVl(y97epXcVEb zM9-l<6kR`v!qe@a;8&pQ4IQn`ft7`*BzC~fP^23jTfk$JH>C(g!}UwH<{$9Am-u{a z!e*b-@9?5~bEzewoW3taiLvOTaOlJFd+GG!E9~0Ey(o|IWz%H0r%nL zcr*k&8Uh}THRlHU(g^y}82ZvIeg}L-;421S(PhwmAZ>wXfln=3q?ERq-#7(prq9Uf z$Vg}LY`b)>+F#(RK|dwW3~tS@#-B=CXo0Otmfz|?NYSJOa^4SKyl(1h+ zq}rYoitu#A4-$zlZZR&EhdruMZBNj;2ixj!o6GRLMKZtGt~Y;+rJAu?nsl>VYh^># zX(}SS?ECS!?PIjwM$dbDKsT7jf?ysChIuTQ_y(LH22KzGC&<#>pF7K(_kKOjJYOAB z72AdVHx>+qAIw2M@clEdiD{;OtVCVW9#I~?7@yKweV>tG&*8a3ma+8WW6JW0Ki$57 zPhtA$`_$X?o=x9wq)>$0B6^cZbdU9pJ0d)>8_8A%&0Jiah!qZ{FU+3x8nNrop19eR z+@HLU*4V)S9|<;E0i+PbDcmfgDG#3ALMgg*h%5JX}Ku8FZ-aqdIgd(_FLT-WPt9$^{P9< zHBaW}qnZaN(r2fq;_TfWf6qw0=GZrp(-jFGd?rjDKkkITS0MH6sPvP9Zz&Y{`G{X6 z65sB)SZ>kQZ$NJ9(vIhTv}3oecIr~ysch>^|Gke@AC-<#Kezq7e6vcQ))Bcs^}(hi zW9}Q-x1c^_sLu%MGmA%tI)b2%AgCj(eH(ni;0p#{@Kw;AH?@9ORAn`aGOEzDdD(zN zH@y?qJO7B~%MJSA-jj+Mcv*kTvj|%+tjwL1)+_KCzlN_@n_Am_xhNeyKHV5%9q}4{ zzdO*TTouY;oswsiP4gXCRPIOB@Ka6|!hzIHk13mvsHRYaQzU+oNPN2$e<~sCI`h3_ z)9&g9X~dyhsY%{LXHwbLslDz3)VC9>DIJmh?TTRvl;f}Ml~w%;9Q$@T;lzvQrz3H` z+fteNi^I{8eJ}blujfO4j^1Y>`vc75LNJdD!8|S&CkXr{`hT^Zc{r6_`}Z|b38^$u zNhw89G-z1YjwH$y5mG2ak(AObQIt}~A{i@1WQTq#Hl`QCWv%940Tn zAXkJ>+8Zn%HzR}Nd=P(WxuNUDVk*0O&OVu`i|K%Gx-}AV+}Hn@TRcKiFKhAL+a1$- z>oU=?sqcn*Do7vxf9nc9W(a)D5crs}>k#BKhI~el&o}^dwZMd57NxH+FiW zpCP>0zk71aBdaiO7+EmQY);UZ+Z|W_-WEY0esa|2(q<+_`qxBH5{a&J4D)=~*VUrd z@(mLmqGK>`wx88Kr*4k<+A=%zSxAjE<$wRj=8j($bZPNJ^`$wAT<5F6de3>Gn(vYM zF1Kr+;!^PG#$0~crs)5buY^~CzB_`xJA%GD3Ig3G7p912=H;LXLGy}E-)cqC0WRH%rq^^vs^ zv{&axIkP+_MYt=XCy7K?E%U7JNuBvp|W}}lR*Sd1r$^84@N6!6-j~Mu2 zVerGk;D^P&e-ii}415m)zK5O9$ECGh?%Zp^8pcJnixO+`e%Y&&mj+)&_du8BhOFw- z$wm0;1i8ij2@SYgG5F}5m@FI)p9>y$WI9>bVZZ49(s!q`(BsWH7QH3eT;}@@#yc(6 zj0dN$Pyx9!)2s~d(p#3N+&CM@qzJD;#)CvMF4q!74++mHN1lG;&C(TGkY0*?)bX*L z>&W;lA9-Dot<)yl2exl>573*GvZTdUkJdfBBl}Fk*#VD+fJei?qaj<+4LB4890~#s z1(A6U^8vwpz%U=!JjK)tEkd7P6yoW3-D^!nt4-G+VFGu`4`H+?hUfbz`>uR z_?n!XaH!?}Lwlygpmg|r3 zk?6W}-Bq52%CU$Jt?h~KD?mP8HkOLx$8qF?6sGm}PTXxp@yzgywVOMM9-mL!UbtyF z>UBy7bOHZ21paRb{NFI)o`4TRzy}Tc5dVh{Vy_R7?+Ef8LB1o>zcwlF*%2#{fd$0w zb>*Q*)FpW@O~atI>y!#Z?AhKUE>U50 zdZAL!O21olXvqik>b3S{`_VCFx;Qm{Hx)22VXS4XFYUI>2wDA$Y1-` zd;{?(8Oiru@V&tw4ud}&27fq2d}#JAFeqzHJc=L0Pu&@N!y73Gzd5&bc@BGhkPT^x zpU9tpH?|*pDz!5nU6-Gm;yfvf%Y0X5 zid$X({r_?L-;r}M!jS+^fq}uy2?J{msz;mBk&Ia$vsy;${AFaHX#l!_ z9~A;WDg=I1Y@bP}6A0=AhB|>sK7sBSbVr~&BKt_0*IRczAHKK8b8z78otn3J^WysB zYgje-0sQ;kx_HBSrvm&*e}$@Ih?dm5+^o{-Cc6 zt-PnMn{J+s_i8UM@9Zz)vVQMiJf4{wT{hu3B^vFn7v$hTe-)4PsLN(jgc~4wl1Oxo zQ1NSD>hu)P8uFDL3MfTKCHft8cEob5BNJuUuM~Gwr3z16o11cdE!{%@95?gjBChKQ zr^@~Be;?Vu6J3Gd#K3Q2;5XU+3cy1k;2|*Z5Nu9dct>D}|Cbn)y&pT|_UFVr!jPz0$@8(T?_fxV{Ft4H(N40$y zL``kQH2mJF<_=;Hwp8ILp?@UQU(&cy__yBi@En{ApBp&^+YVkS#d`O{(Xn||=-RPI zW$RzFxU55}4C5-bYTi>m^slIy1^oYLQsEl2`fpDicHjDo?#l{g!W%2A(HOJw69y|j z;hixLL_3l?IO;BS4r#`W-9`2F-e^o}ANB$Dp614DI{NpNkU9gLAqLJ6182zg0Xsaf zlTS|W6)u~I%i;!0@Z$WoKbP;mW7qe~pY27CY1CuC1=<6WMkQFdOv+Z z<*zeRrwCt!{`DQg;5&rDcZls*3*0UOZWjT!iwW-r+!qG!3jz1Vey)OjD1v<`hJ7d| zbpqxShWUhGJ|R-)K6~w9zWwwH-KjmCFnviWntbg`K->`~mvu^o;i}r{>UlVV@(;>u zo4VYDX6=9dK5`$Ey7ia&()xKwr+--$UZAk%R#8zd){b&F(Yjs1alXhryA~@w=_HlB zHul2fWxBMHdU$cmCGPtoo09Lj#HJiWD~>%F9N3qF8g7Rixu8zoml;{N_rdoDUn2~@ zMi_jJ@I&}qL)b0B`ByQ{coXY*wWS#Qy9bOZ9#e>)z~_>6-)5fMoP&P7b;{c1U4sP# z<@@Uy$p87n96|72_6ycA^JRp(Ghlr>AkFUFT zpa@<8J)xy-_@UFEO>uiUbG=ayw}xRAW2!XBs;>2|A>I8-DCIey;wY`#BlVx~X24Bh z;HEHeQ?VKr$Wlv_1!bz%8w_xk$Aq5k9XgpCVXqB ztJBW#7Ffp__}{QObyyz|tPcp* z2NVfEUuW?dlQXhb_=w^y&x5YzNUV)tVD|44M7XLiJh2D-mwdy)GauOB=cz`gU3Bu? zb6UBqGpdZACw&ezh1*i%XH)x20M$vvzl=-o5l4X~jlJl+*Fv+8wcoI` z^`+d-FwWf6sqY@b`wR7`sLD1~sq?CI=)3d6)$-i;UH z{XBqc!oW2l;F{Px8_Qvi?mwFO*y%|4w;yM3qQJNFPB=ByvFB4)Va^6I!$Oq(ow5pJvwhiK3n zy+pM4xYK<*-(0-v6OVM2+dIgw5#3200zMN1pNW9aM1;#-_RcuuOgIZOB)fCvAHKuq z9OhkJKEH}x-#dGsxh}q+fGR~RLK1n(k*tnn!Rq!VMCy=9ug!!#K6U7I@?r!x>W=zWOFZrIktyZGu3KK_{9vpkG zJQv+mY4LLu`_57Ku|KT#Y`<<#i>E6{h6O26iw~c5KOsF@=WZkGDtT`M{LwJ@qapA| z!}0KYP4VEbH=6ha?OJchd^6(;s+petxx+jO7sBV8OM(@)=0xM0Qd$WeR1JD+RBF7M zPT*2kRmPEJkL1hs-KYzP-AH8K!5|bi48_8o5Nj^8UTtTh zQuw^Ib(_qSK_)JhUjEVWawcm2`A*$3HVFUwJ^#L+xiRT%`sB%XsMBsAU*=u(qvozn z@vu6~q{w_DdXq?WKkYOx$GW~16^@Zxu;5)24*U|tOxRYGhC7EgH4sWj@(vyPw(@cRh(eGL3QCiM~O2!c9-ppGEI&-_zAwzS{26X~v)sp>PP z3VGBQCzVx}A~G(4%%B%W@7qvqneF#}(LB^9=XKUnf!p^fRTvrLGz;Dyyh&%?-PLrt zI*fW9lwcws!K4W9M)W3;=)R%3a+ghW74o-{)7JAU$7N5mGb9k_byNHGeD6282Gl@p zdcxJ426SoNrMAbxySdKylPl&ecTIVsjI@# zyZOcyyKCLx_Z(Rl32z155eDuE19!ycy^2{EZoM;$LZN~FZ~AQy;Kt)iyMt1z*ma^u z>`6w2dl6nZbgi&8p%`oE2>$-S_Y_xv?uW-7y6vU=9H%x$PR`owiiPt`v^NxT>o=~- zXu21-eL;yYCGkG9v_LA9I{)RarQJ;?MdlOHn?$1f2Jc^{71!&Kosx>9+fWfM3^|wn z+%cV_?p{%oTQ5A6p?X-y+WLF8P;&E!uOZ3e-gneZS;NnM>qq>CC%;Eg{Wa1!abLpp zG2snIbSL~EaCF1|VgKRiFmQD2{Rq?v40QrSonZ4~FfJIz1;MyrQok>BIh{P19*i88 zm*3m3n1_;=!XDyBm)mLloq9?9gdR1CjlYac= zn?x&rTofcHYcd$Id`(C z*2!-dX5mcu{CIb6rgA_8vP|1FH*@K*pR_eg#;=WAKUOtHu}I0Y`VK={*V!O`QcV!8 zUu2WEeH@DlhM!NygG4eev6sHToy%K{%pWT3^?mam-Cw+VTbj@S;`F|Uc#_B(C8=RQ zzMol=k=v!|J@SRC=2mmh`~LU+_sF=|!uJMWA_Trf2z-eUnJ>VdV&G0OaHoiHNr5+S zZCzd!favC%l@tHOq7wIo7aaFzvggaX`Jy%;EFJCMHsjuwqHp|x%2FoTe6Y9 z^!n6`ohGQ-OMAeg;3Ikl<2t4D?KJ;4X?XQ=&v6;4-q>a!NAkwOXE*~szaDd4diu!% zq$qXz>I&W}G$Y=;u-J%O9~lh>!|uuL<=4;92aX?B3AFd2OVja|r_L;j=$XCIlB?D|!gcHS2j%wsxZl%9)5 z-t#1UA#ipGI6DNK9h<|3e8-UQ81fxOfUf1M3QIOSq@cBZ9*VN8JS-l2RyXM-jk4f# zyT;hI@9Xa%u?fi~Q-6k`^BS$Ey8iLPr2ks&Cz~>+B@3_gdfD>fdn^*YGhh0_?nIml ze}6`s?<)zLBDCW9@nc2?_i_A{W}gO?cvJ*3#@ca6NWnBgMAp)<+JBg>URFadkQMByC7@%RM$#;#gfj|D$C8fvsCSl!o7{UGa7ON14>&dK#Unc2SP|^PSJuGcugc*-`Rhub0lRy+sQ)Cb@t4 z&7{bDCVG=dboX`I?|;p%9u=2#-JIn61{tM)wqBsa`96sE#kaMFrmdwn20d6VX>Ce> z+#}-rrU2n@DoJfCy2pMknJM|90>-F1OZ3FUe}?HVW?vW>KG=Rpl;*toesf% zh|#Egxo&AHI>WQzk5g?T*ZF?o&Wbbb+rnw5+mvyI*)jT@<+immF0&}Y%MravB)W$O z7*x0@|AWIsGX4ZxRH8iP8lQLeoX<1OO73{}@ExS@w;Kieryrr0q@)G&4(=MI^%iryouaz5UVBQsI!k}lbtn8IaC`_jJ`5ZmBK!+*AP6`R1RMx^T%LKa$vHZ^ z6xGZ3q)M3AquVtzuJ*in!(O+|h6Ydc&3KHvJj@iHY|qBjx|9BL5@}rKy9%S)X@`AB zb~v?h(WGAOP)-&ev8sClrfBXzT&lF7YjNL)N))` zwKumfe-$S|iwW!7ZIh9wb}X)oTlaLd_?(gROu|V3Pk?|YK)@5Q_o=XMB3L&utefZs z=(_2bhSZ#QZTRXh<5@);w&R8NT|#%Wt~xBEbG47wq&9g?P8zPD6`s$nk1Anr+OKSA{-&nn?$0!Oi+2U>HK7L zr8?`}k*&38**_($sbe|!we=qiWmxzgr>jKHp zM8H4dSkUdxd7qV^?OgGqkby$!o6j)i)gb8lqlWD}ByhaQR(NSNcJ!V-X2;@Ge5u#> zPhnpz*ZI6>^YvfS(~eSWTVp~~3Qtn?6PG0&(PUACS0;LrNOW!8c6-c2RwI6xDu<$- z3Xu818=vI9bLN)Xiw(5m#jNSszq`c`eln&f8YTX`_)+EmTRsD4je)a9z*)2T7U!Iq zt2Yn7PsdtC*F|l4iC1-}7hiHej!55IbH+lY-`AS(%7E;Yc4iF<|D0M9<@6rc!npht zR2WFH0l1qAyA1p5WVg1=w!)@P_}`2KPwr-3Ma zp;Gk2{e^w*G8Zm&Rb^}MD!$)=z1dN#62JP z56Gc3n29fzVkU3ZE!@xf+zB1OmdCPU&{8pz3{S>wqTlqcm2}$8{d;5Fo_~=20{Dtz z@D)YiE6Vo$0be%^zHS(N-4Njefs;eP$zkB+5LtJiJ|n2l2y)c&b} zbAz2K^%$RFUXM4RwGTdv`Bk!->wNz2x{vVdgg*!0Pz1iA7<@z7K8fH@iNK!{gFhwP zClPpF1UxSSo|io?z$aqh6EX0K?DuS-zGJBG2fxN<8!p}WtM*gWE{f?{VEwcIFx_&cb_rrwjrzEqhVKnNh8TPdG58p= z-}e9>7XgopfyZUP&jI@p1p5&L`w>Jqy_Z`bhMO;{LJ`NbBE|Y5(OB)N%T`o=K!npn zgVVklnXu3U`=qDWymIlE0E^_56Q!sKzTbngdS|I=MfkU&*36+aKRnB__R^g1+`b>H z$|x)7;D2HmK-+(=t2DDZ*V5y-6gx_pK6|xM_Jia&|r%ZKsrj@zA)aW15`j%Z&NT7V{TsQ>i)E z<80>|(T)=5o$h@+JWBIrM0YY@z}FLjuO|XuPfR#D;K>m1WC(aNw!fIMIG^oyy#Rdq zcR}3+=`2*S!llHk@Bl7`e8&r#olC6>k*uud$~7OIu~~7%o`6l<`mm@l0`F*i-1O9l zlA0xYwCeR;D*sozsD&JhO8iTm%J9f-nEa(5t#`}HT-z~(8$Ew#hYfP(%@`?~YeX*n z!3Hy(zm;x3LFFi)>(F2C&UL>3_w{9DzjOhB=O@Jn-*ot08#kL27kRf+^nxV^*CE9STFunS zF)f`%5mtrdGKnOo+oy^8oSgImcdfQb&L8%eb(vJG{xg!Z$AOolUb>^z7D`}7r$kt? z1h_nY?8!r~KV^i|JZEB#Zk?A;CI2O-`JNw- z$=2$`OG2WXr8fM7Y(iJII4Re0JlhiQS$KKRB^$b;L+OyAgf1OC^HjmmhSBO7jpQ`( z1_CcE1YTGeys$8vDR7xrelaBw6&;#L&CO20sU7z|_>FmliSB8+HjQ1X7|l&x64qxL zi9KJs@k~!9Oc3Xs{!c~^>l*%xkrTbqmzwx>y5;<{q4XrZquUi`;IR z`peF1V)0Ak?J67J7bBq=raG0CpE&B;dOk58+W1 zy7c#a-E#DS`QfRT>7C_h%DAyXH1C!gF-kq3B6Wu7Ng~m;gv$ID^7RMaHa+{H=8j$z zy{hM;Y<4@xeC7GdyggLEfLiprt9C+!0sU0MF;)$);yPcs)s?IpP#-bWM-26m&EkP> z2y{cB8{4Z27!?eR3Iaw2=EvW39o{2v^tP~Ebed9opsM?AS^$0bdNTd-D~o#mm-_nW z)sD2jjjg!oiIu;`=6>YlWcf#1q?er{INZ37j*T}sh<<=JH+EdwkJ?U9k z^tG_R-#8{FOxHWjtAeJI8CYq_!?Bw6`6&H-C@m2X%E%m;j^wAab zPq*6A=lPnu{nN0=O8?7zkQmq_9g^9Mb|^et zBto^Io^>`~c{jh|I3KblYu5(QMs-iv+rM#@7A5wm z-B!WVVU+6B$Qe4>j{qBrfeppLhO&G5z`7w|-4L*DT!$ZfZF-%0T6)z4?pf-^->?4sjct%V`eS|9;v$}879%cP>jS^%$UcwMN2n7R>I8y1 z!S=KR1|0)~j(|aD_w<4NLBRfCV1Mwx^Xl*GrpwIf!nZU$Xp2p=WY!wH(Puky-PD%l zQ>0E2JxL_GDhyObUfeT?eMMr&%HD4PQ;UJA#lX}e!ZZQ9gMi&Z!0xbn z^7}pHRx$VAMXx5HeTRx~q8-d*)+dGYxzt^aA%E*!YG0WvMb`{$I2&|@78Jd{(|U+S z5mt`qO(N0V(_3QU^L+_O>*mw-uKT{AtfyVMssddc>$55U(=7@nGSp1TO(Kex=JeP( zqC=JwbVo_|k#&=JB!U+p1}{JiUVv;bDqsLHFn|~sK(T`ip?WPT3dHAX2dYxG{#n>@jT;hTi_g*9c^%tk+ z|GqFK~@^6|{ZTo5rH(zpR@LZo#Y@yZ=Fsj-PcOW_`etJn4tkHgK*pa)WbI zTHmgrvZqV_9LiroZyh5T(Ennzp3_I>16l83T|=<0VOZDLcb$UQ6aud)1YT2Y-Aj*O zFcKAiiRRlZbzE^g9f<_=PGB@uv6(EN&j+5aon3_czAKMu4k*OS5@*=|n$GQWks9NS ztCZ#^#z9)N)l_qgqBCt2V0j{*#i9t~PUZoLWIiw#*M8L!>B7?;_r~cB{y@w5XOzKc{{orm&-;>8Xh=26w19_(b*n9+RJ_a_Q&D4T-8V2t)1m0^XEp(Lvm!@CF>g0 zZw&PtL;Yso{Rqqz0_F+m*Z0Hw^W4AGnTz`TmWJcMp&5D$3c618;nXLED=sK~;kci% zUDuMD9Da~GlYivY{YDFFe5!ZT>af+Lv=1DqGdJLSgC`vVPdW^qbnG4}cp4$_G(zBM z#I7TJr^455T<{1pg%3QBGy?peh=N@Z6-)%rg z;_$0uf}C~#?AEc4Z@mS*agCmEeAp5C>biI8O|heY_Z69kkdGMh5ko$*Sqxw^5wMvE z*i1|q@lABPn>gnCtP48R(eWcxy6>XUpjmd5t@^j0S9gw<*VITIA?zeDf(RHv1dJft zYa}>;C1PQij|?;8Pv)L?#Z$)2SIH>2&CX|r!kWv8`|?ozoaUpcyGl`vxuwDhH*U{q zl^KRrwGBZo;dGDu<0qjK?$q|<)wh}q^C`mE5IspGx=L*HZ77cTgq6m%clbQehe&)$HF~mcgK+;oKv~^ zXhs-e7e<~Z2@?fu5CS#`0~^HdxsUa^IBiZ;E!w00;DF$8Z{50n{E}6txMkVY820X$ ztd5tSp;k0A`J8HQQH+wz*s^36MOZqb7l}l-E4}aCX3lzxUQG=-(6zS*^9GJ}{GiUc z$LKEb`jml(9VPcq%%b>2@xal1%ig-Kb?G>?`9V}v1a!5K|N}{jKPsx6IH0Z!B4AIc`Qf$xyTE~ zWz4@`eF(hzFnIN`?@$E~Eesx72t2fK8T@@EnV+FkH@-jtuAiI6J#vS(=+Z8+a+zdwuHmqfZ*2_M zbye6;1( zQ1GEv&UGf2$Ft*FpaI3R{#^W$+PT!HC$;A___+7h;dZ`|`UrIdLmfd-M=)Vjz=I2c z2NwnpE;h>y><Q5Oe>j{2em`@S*h>Qn`WL&13i5oCfd$8@h`Y*=H@9_^4 zo5dTeIlmJ(>FDB&>?4lN6f zsa_Cw7b#yc$T$66h2*9m^?k=%$Yy^MB^}PaS)GkM^wTsyJ`6z59C|zwlEN_A&&c}n zbk_fj$3^`*cIPf9Bdii+J?4-XdIj_4oNckg>086^+SSEs87^`~4`cYo_$TIaIWDS< zA?a6QMoM<{x%l}Er$@fjyGIi&PxI$fgpncRK_VHKEw^I$^QSoAccB3}JI2-H`v)fE zj8)(~E_-LE%T3WyqilEnMmxV4&;y@SmYm%?T6f=$?C;6C2=yOB{l`%M*{mCk3x;vQ zFfQyng@Fyizy={;gV?%9NPAk(4JyV_5}(5B^DquOve9%w^-V5yS7Us}$x3|Y!}UpF zQjCeM4;9k5`EWrriy|IlL~jy_?tcqt9X-R&B;Ywas#f>=x#30`<5Tiy-Xr$<;q^s8TT{w3RQVs4(hl^$>gDMi5wPHO4dgx-2Zc2ZnbJTPms?*-a?{F zdh!Nv){1*^L(@33bnW*ZyhyXtqi!=#i**=nr6!@-2baa6QQB{f%m<=7cm*Qx3dG~qE64G?@>!O7QUjZ?@;uvDRD9tEQ;(ah~6ZU`M{I(;k4S+MqIJxURXiYcbpb1 zFnvRJG2+yp73`kYKd|cvwLQ(yU+|nZ<=dCK_-);OuIGdQlBo?PUz2fZ$gw#d^mCNc zuK#_ouNmh3$a5Fj2f}^`!+r?Eeu(|t1^J91pAqCUdq0%7tW>`vClMVnp7TQ0)m0yocLaRK;KF$hou5ZF)RR^ek-iCe>k&@T9JZj~%yhKEElR zLdR8PY0&0#z1`jzIZ)CH^(L(sxxXtSv{Y(|t$rL@d$i5JOZNnJ`Mx5$WV{OG^T_jV z0DN!o3Pj))h`=k5t(*1LhdSHLqtI`+IZwqz@8j~W_X~n9WpS$WSLo_nzQD(cFo2!}`VlthxRe>4KaoZqX`FM?8&%JkP4;)!!W{v(iGbTgz-?l}(E(qGfiFbB7s5FFrSCY* z7cO+48!wbLlTH~}u)odEi{7TOI7#?nK1I&oiC!cU-Rx)R_S7E#f+L+(4S1&TQfVGD z-x=p|?$gDWe;4E3YC{Vy-yxJY{I0lOPy2KJ-`ht?w~_iuI0@i>5O6;jxF7bNF3?xN z&{x3FS73X6fM*Z}&maVzL0sme3S;2*gMoRO-juEE+QLJ>J?XKwA>(c|2NAx6- z=xTDrT-Y_Ahw^I(l++XMMf`Ff8_&Gq?A7|=Na`BHJ7#q5zM9Rx(#DkL@0Rq8ai>OI zSJGz#J_G?Df`AWUzjF-zO9cH(4E;+se*%3r41G2XeKxN1HE-FAq>9IP>AR0=V=lU! zrDgQiNQ<1!r^q=k(UU}?>m`Thw{>6f(Os&SzSEXX==7X2&sW>Z{<7{wy7ARS>hz(H)auAU z^Y}_g^u_G2gJ}k%-)|v(QRx3+=>K8p{~_|64E+=g{S*xS6!u*O za88QgoD{)1DdMVb4etl8uX|V_)Z_1)_ue;RYq9_3qm)Ao+xxQ{yHCrxL@=+F~pr~65L*QaM_U-+=pRcqAOEzS7D#az;h~w=TrpG zsa)%7owut0`$}iJx81{8c;;P7W@>NPrKtrJIp-vLl1OyTsR{EHo6(8CTBV766YIln zYic^>(l~n^6)MT!9Neoz@rEsu-Ni6Pcp*MZ3@AD>Mb?uQE42%8133Z%RY z?Jeb<@+r~>BYKiZbiHqIIj3gr@VVN%aTAuijG+|;d?keCIKPwY+V0=KInR-n+{Y(n z;HFQ-j8ojL7tH;0D2D|L{_{w_lJi~Y-(l$AVd&qnJ@4T>3d4C6g7YZ$yP@!oB7%1m z5xk?wb-tFRMP`1vd4c}jcK$_!a0Jz+(vVeTpHGqV1EMF1MAx>iXBKYZRrpTU)cNP5 z+i>NoS^c;4ID5OuR4xqpEg?-!u3?l+aXCOA=Fgbd8EeUPeRZ@}p1!BD1kH`NKNwF( zq8obIHZh-{LjH{CO3s7e+ylY62ZnPG_FVz+e2?Mz9>McHCi4{X6+^xv$XD)k{eP0+ F{{V_zN5cRB literal 0 HcmV?d00001 diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/monitor/.gitkeep b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/DEM/monitor/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/README b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/README new file mode 100644 index 00000000..0e538c60 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/README @@ -0,0 +1,10 @@ +Test case for ore reduction in a small cylinder + +1) fill a cylinder with sperical particles (parDEMrun.sh) +2) create CFD mesh (mesh.sh) +3) introduce gas flow to reduce ore (parCFDDEMrun.sh) + + +Comments: + +After particles have settled, they remain frozen to their positions. diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/mass_layer_opt.dat b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/mass_layer_opt.dat new file mode 100644 index 00000000..fe8f6efa --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/mass_layer_opt.dat @@ -0,0 +1,801 @@ +#time mass lmass1 lmass2 lmass3 lmass4 lmass_{tot} +10 0.493434041863914 0.00205514989592862 0.00660589076126408 0.0424146682964906 0.442358332910231 0.493434041863914 +20 0.49245951911578 0.00205514989592862 0.00950580425245368 0.0612724294457584 0.419626135521639 0.492459519115779 +30 0.491533853747881 0.00205514989592862 0.0126014178803977 0.0780855697545337 0.398791716217021 0.491533853747881 +40 0.490649936786299 0.0020551948532625 0.0158465784505578 0.0932080011432098 0.379540162339268 0.490649936786298 +50 0.48980226557356 0.00205651826396607 0.0192057421566188 0.106898176148744 0.361641829004232 0.48980226557356 +60 0.488986100451775 0.00206271221043687 0.0226469919108037 0.1193514445094 0.344924951821135 0.488986100451775 +70 0.488197674510037 0.00207593629857599 0.0261471189292331 0.130724756372543 0.329249862909684 0.488197674510037 +80 0.487434187073883 0.00209646668971253 0.0296903546886684 0.141146545826279 0.314500819869223 0.487434187073883 +90 0.486693464306797 0.00212374561405316 0.0332654287398584 0.150722982002698 0.300581307950187 0.486693464306797 +100 0.485973426076247 0.00215857104586299 0.0368608469436771 0.159541381689852 0.287412626396855 0.485973426076247 +110 0.485272086812471 0.00220272771429409 0.0404648940412023 0.167674765311812 0.274929699745162 0.485272086812471 +120 0.484587966175177 0.0022564027638926 0.0440703459997776 0.17518692735743 0.263074290054077 0.484587966175177 +130 0.483919896378486 0.0023191383558737 0.0476722750226317 0.182133238609454 0.251795244390526 0.483919896378486 +140 0.483266855899709 0.00239048097776341 0.0512666856408547 0.188561778584629 0.241047910696461 0.483266855899709 +150 0.482627938946594 0.00246979716551087 0.054851016201419 0.194514894919727 0.230792230659937 0.482627938946594 +160 0.482002380434478 0.00255647440403806 0.0584230043346048 0.200029638095666 0.220993263600169 0.482002380434478 +170 0.481389418337021 0.00265033116508886 0.0619800798950085 0.205138601749306 0.211620405527618 0.481389418337021 +180 0.480788333898775 0.00275131939578165 0.0655198900838632 0.209870766780944 0.202646357638186 0.480788333898775 +190 0.480198511647239 0.00285932489569668 0.0690403766546251 0.214251998485013 0.194046811611904 0.480198511647239 +200 0.479619438333945 0.00297398109578522 0.0725403101796411 0.218305671485241 0.185799475573278 0.479619438333945 +210 0.479050676506718 0.00309483779406924 0.0760188054338961 0.222052897735656 0.177884135543097 0.479050676506718 +220 0.478491751332173 0.00322175272220709 0.0794747520097794 0.225512766928222 0.170282479671965 0.478491751332173 +230 0.477942206696138 0.00335473745553208 0.0829068287565418 0.228702592806263 0.162978047677801 0.477942206696138 +240 0.477401606492865 0.003493776230328 0.0863141075730743 0.231638183425298 0.155955539264164 0.477401606492865 +250 0.476869543823169 0.00363889601366458 0.0896956740540771 0.234333926011858 0.149201047743569 0.476869543823169 +260 0.476345684967191 0.0037899617860583 0.0930509463489371 0.236803032879381 0.142701743952814 0.476345684967191 +270 0.475829704693984 0.00394691925711777 0.096379276971826 0.239057678159082 0.136445830305958 0.475829704693984 +280 0.47532121341203 0.00411004085599288 0.0996796423624596 0.241109047141644 0.130422483051934 0.47532121341203 +290 0.474819850835155 0.00427959933027457 0.102951012887075 0.242967492620945 0.12462174599686 0.474819850835155 +300 0.474325375881525 0.00445542624577653 0.106193199873481 0.244642694439716 0.119034055322551 0.474325375881525 +310 0.47383759065302 0.00463723078969086 0.109406320375662 0.246143619467683 0.113650420019984 0.47383759065302 +320 0.473356238918391 0.00482505187395772 0.112589940927639 0.247478596093821 0.108462650022973 0.473356238918391 +330 0.472881039426415 0.00501906803280593 0.115743491145508 0.248655381549098 0.103463098699003 0.472881039426415 +340 0.472411808038782 0.00521911981755022 0.118866980830564 0.249681256348929 0.0986444510417402 0.472411808038783 +350 0.471948356462611 0.00542512585890607 0.121960308936916 0.250563007389633 0.0939999142771559 0.471948356462611 +360 0.471490488214803 0.00563706022735517 0.125023369804103 0.251306983962763 0.0895230742205818 0.471490488214803 +370 0.471038022703491 0.00585485525544834 0.128056203834834 0.251919123848715 0.0852078397644945 0.471038022703491 +380 0.470590819410091 0.00607834976417837 0.131058963010939 0.252405008515594 0.0810484981193789 0.470590819410091 +390 0.470148730547618 0.00630742959128246 0.134031789968648 0.252769875152351 0.0770396358353364 0.470148730547618 +400 0.469711597245998 0.00654206809128671 0.136974686672405 0.253018646583775 0.0731761958985304 0.469711597245998 +410 0.46927927684286 0.00678220753438163 0.139887721012722 0.253155950717722 0.0694533975780347 0.469279276842859 +420 0.468851642570818 0.00702773843129973 0.142771104728015 0.253186135618856 0.0658666637926472 0.468851642570818 +430 0.468428551206996 0.00727864125908593 0.145624925798717 0.253113305495621 0.0624116786535722 0.468428551206996 +440 0.468009898011481 0.0075347862065936 0.148449419994691 0.252941346227296 0.0590843455829006 0.468009898011481 +450 0.467595557425268 0.00779615364866652 0.151244648878321 0.252673937229072 0.0558808176692078 0.467595557425268 +460 0.467185405363116 0.00806273740858438 0.154010671496229 0.252314556114025 0.0527974403442773 0.467185405363116 +470 0.466779350703461 0.00833441891072187 0.156747743814719 0.251866489819119 0.0498306981589008 0.466779350703461 +480 0.466377292300248 0.00861112981130234 0.159456074605791 0.251332842750522 0.0469772451326322 0.466377292300248 +490 0.465979154314444 0.00889273031895409 0.162135972093201 0.25071655501638 0.0442338968859091 0.465979154314444 +500 0.46558484460185 0.00917916495190843 0.164787610395181 0.250020422216833 0.0415976470379266 0.465584844601849 +510 0.465194265681034 0.00947041297019442 0.167411122035056 0.249247096374911 0.0390656343008725 0.465194265681034 +520 0.464807335507448 0.00976641200777846 0.170006703394544 0.248399094675386 0.0366351254297398 0.464807335507447 +530 0.464423988030738 0.0100670570760835 0.17257461163946 0.247478805636361 0.0343035136788331 0.464423988030738 +540 0.464044171637892 0.0103721936647314 0.175115207352853 0.246488482580738 0.0320682880395706 0.464044171637892 +550 0.463667824660517 0.0106817205157546 0.177628769782874 0.245430269650257 0.0299270647116316 0.463667824660517 +560 0.463294874258445 0.0109955952793715 0.180115481358623 0.244306213673118 0.0278775839473317 0.463294874258445 +570 0.46292526378887 0.0113137278611229 0.182575595944244 0.243118256311083 0.0259176836724196 0.46292526378887 +580 0.462558925722485 0.0116360676373137 0.185009349372034 0.241868221498014 0.0240452872151237 0.462558925722485 +590 0.462195807551822 0.0119625273276453 0.187417010436372 0.240557848103057 0.0222584216847481 0.462195807551823 +600 0.461835831805752 0.0122931176765889 0.189798721943154 0.239188784334212 0.0205552078517971 0.461835831805752 +610 0.461478924428081 0.0126278527438526 0.19215460690415 0.237762602127157 0.0189338626529216 0.461478924428081 +620 0.461125027312407 0.012966701024727 0.194484845791486 0.236280793335352 0.0173926871608427 0.461125027312407 +630 0.460774103626442 0.013309551572722 0.196789766529137 0.23474474696556 0.0159300385590222 0.460774103626442 +640 0.460426098541204 0.0136563692598133 0.199069588534976 0.233155779576855 0.0145443611695601 0.460426098541204 +650 0.460080974273298 0.0140070661699124 0.20132460621603 0.231515129285039 0.013234172602316 0.460080974273298 +660 0.459738704749152 0.0143615227710436 0.203555152774049 0.22982396350446 0.0119980656995999 0.459738704749153 +670 0.459399266560965 0.0147196196602568 0.205761558440754 0.22808338046766 0.0108347079922936 0.459399266560964 +680 0.459062629169544 0.0150812644044363 0.207944139178809 0.226294395352593 0.00974283023370586 0.459062629169544 +690 0.458728759874213 0.0154463787916989 0.2101031980732 0.224457950522122 0.00872123248719193 0.458728759874213 +700 0.458397628687537 0.0158148863604327 0.212239024265503 0.22257493298302 0.00776878507858055 0.458397628687536 +710 0.458069199886172 0.0161867401711689 0.214351861743143 0.22064617408971 0.00688442388214942 0.458069199886172 +720 0.457743441357678 0.0165618873801316 0.216441961446955 0.218672451719277 0.00606714081131383 0.457743441357677 +730 0.457420310826453 0.0169403230634692 0.218509487651847 0.216654521186756 0.00531597892438057 0.457420310826453 +740 0.457099771379877 0.0173220177209467 0.220554662248781 0.214593102581762 0.00462998882838667 0.457099771379877 +750 0.456781795768988 0.0177069069204143 0.222577742072926 0.212488958159533 0.0040081886161141 0.456781795768988 +760 0.456466350988364 0.0180949429805701 0.224578911337735 0.210343042472018 0.00344945419804175 0.456466350988364 +770 0.456153409005604 0.0184860233022929 0.226558351805158 0.208156857062682 0.00295217683547067 0.456153409005604 +780 0.455842932417995 0.0188799618813823 0.228516070768917 0.205933774433245 0.00251312533445073 0.455842932417995 +790 0.455534871188981 0.0192764549621994 0.230451832873147 0.203679778564795 0.00212680478883927 0.455534871188981 +800 0.455229177971096 0.0196752323121334 0.232365456188619 0.201400187151041 0.00178830231930146 0.455229177971096 +810 0.454925797579346 0.0200760014344116 0.234256675881942 0.199101088326314 0.00149203193667854 0.454925797579346 +820 0.454624686568758 0.0204785741312468 0.236125437947495 0.196786254018512 0.00123442047150409 0.454624686568758 +830 0.454325805727925 0.0208828155802221 0.2379717787189 0.194458378905758 0.00101283252304556 0.454325805727925 +840 0.454029119016436 0.0212885571973765 0.239795696991469 0.192120606400478 0.000824258427111858 0.454029119016436 +850 0.453734577280887 0.0216956787724586 0.241597174720594 0.189775912368609 0.000665811419225057 0.453734577280887 +860 0.453442131318399 0.0221040191394666 0.243376120161609 0.187428020814199 0.000533971203124198 0.453442131318399 +870 0.453151721146744 0.0225134320582616 0.245132338566594 0.185081113969924 0.000424836551964929 0.453151721146744 +880 0.452863280163598 0.0229238340411649 0.246865653774602 0.182738725432085 0.000335066915745356 0.452863280163598 +890 0.452576760940244 0.0233351020733977 0.24857601732094 0.180403913860032 0.000261727685874043 0.452576760940244 +900 0.452292123544132 0.0237471303217468 0.250263460302844 0.178079050983261 0.000202481936279968 0.452292123544132 +910 0.452009330359872 0.024159819492436 0.251928030320685 0.175766306944584 0.000155173602166692 0.452009330359872 +920 0.4517283429453 0.0245730759549963 0.253569772675869 0.173467812725022 0.000117681589412949 0.451728342945301 +930 0.451449125684644 0.0249868221074997 0.255188764980451 0.171185314082932 8.82245137614295e-05 0.451449125684644 +940 0.45117164690618 0.025400993425205 0.256785123406956 0.168920155783409 6.5374290610093e-05 0.45117164690618 +950 0.450895877035965 0.025815530354557 0.258358975742025 0.166673522497199 4.78484421841628e-05 0.450895877035965 +960 0.450621788863497 0.0262303860101279 0.259910477073756 0.164446285052249 3.46407273632038e-05 0.450621788863497 +970 0.450349354494856 0.0266455111020029 0.261439768429187 0.162239409324068 2.46656395986892e-05 0.450349354494856 +980 0.450078549463427 0.0270608557511036 0.262947005692316 0.160053721275328 1.69667446792725e-05 0.450078549463427 +990 0.449809351910175 0.027476401059116 0.264432397663347 0.157889415688769 1.11374989427591e-05 0.449809351910175 +1000 0.449541744782578 0.0278921303729358 0.265896180373471 0.155746432579906 7.00145626489185e-06 0.449541744782578 +1010 0.449275709388453 0.0283080190255109 0.26733856262303 0.153624946817497 4.18092241537987e-06 0.449275709388453 +1020 0.449011225516672 0.0287240412285322 0.268759734686927 0.151525250831332 2.19876988086144e-06 0.449011225516671 +1030 0.448748277359769 0.0291401805601684 0.270159920857384 0.149447283528172 8.92414044661887e-07 0.448748277359769 +1040 0.448486850095637 0.029556425635008 0.271539355379212 0.147390860594663 2.0848675499274e-07 0.448486850095637 +1050 0.448226927744799 0.0299727640758805 0.272898256832537 0.145355894032952 1.28034289795913e-08 0.448226927744799 +1060 0.447968492526893 0.0303891783190104 0.27423681770961 0.143342496498273 0 0.447968492526893 +1070 0.447711527805661 0.030805657332688 0.275555242360397 0.141350628112575 0 0.44771152780566 +1080 0.447456020700517 0.031222190223118 0.276853754594765 0.139380075882634 0 0.447456020700517 +1090 0.447201957716433 0.0316387699994147 0.278132572174002 0.137430615543017 0 0.447201957716433 +1100 0.446949325553582 0.0320553895415832 0.279391910894222 0.135502025117776 0 0.446949325553582 +1110 0.44669811119467 0.0324720419999529 0.280631981354591 0.133594087840126 0 0.44669811119467 +1120 0.446448301840927 0.0328887203572838 0.281852992072866 0.131706589410778 0 0.446448301840927 +1130 0.446199884981126 0.0333054176346315 0.283055147496335 0.12983931985016 0 0.446199884981126 +1140 0.445952848158957 0.0337221275532908 0.284238647729277 0.127992072876389 0 0.445952848158957 +1150 0.445707178718869 0.0341388450263185 0.285403689427406 0.126164644265145 0 0.445707178718869 +1160 0.445462864434994 0.0345555644626056 0.286550466052608 0.12435683391978 0 0.445462864434994 +1170 0.445219893085252 0.0349722808424508 0.287679168075415 0.122568444167386 0 0.445219893085252 +1180 0.444978252547252 0.0353889896909243 0.288789981820261 0.120799281036066 0 0.444978252547252 +1190 0.44473793122682 0.0358056854515252 0.289883092061517 0.119049153713779 0 0.44473793122682 +1200 0.444498917684854 0.0362223627893441 0.290958680344431 0.117317874551079 0 0.444498917684854 +1210 0.444261200486622 0.0366390170424661 0.292016924692286 0.11560525875187 0 0.444261200486622 +1220 0.444024768320574 0.0370556438561171 0.293057999888579 0.113911124575878 0 0.444024768320574 +1230 0.443789609977493 0.0374722388817395 0.294082079306311 0.112235291789443 0 0.443789609977493 +1240 0.443555714658514 0.0378887975142117 0.295089332110967 0.110577585033335 0 0.443555714658514 +1250 0.443323071473129 0.0383053157334633 0.296079925691969 0.108937830047696 0 0.443323071473129 +1260 0.443091669584401 0.0387217900477453 0.297054023998551 0.107315855538105 0 0.443091669584401 +1270 0.442861498710032 0.039138215855163 0.298011789221018 0.105711493633851 0 0.442861498710032 +1280 0.442632548330566 0.0395545897401235 0.298953380640011 0.104124577950431 0 0.442632548330566 +1290 0.44240480831711 0.0399709076633717 0.299878955484169 0.102554945169569 0 0.44240480831711 +1300 0.442178268132117 0.0403871673476347 0.300788667420356 0.101002433364127 0 0.442178268132117 +1310 0.441952917855166 0.0408033651930379 0.301682668608025 0.0994668840541024 0 0.441952917855166 +1320 0.441728747598508 0.0412194980328398 0.302561108537709 0.097948141027959 0 0.441728747598508 +1330 0.441505747393386 0.0416355632984749 0.303424134713163 0.0964460493817483 0 0.441505747393386 +1340 0.441283907680808 0.0420515577999008 0.304271892316228 0.0949604575646792 0 0.441283907680808 +1350 0.441063218725744 0.0424674792199563 0.305104524408512 0.0934912150972752 0 0.441063218725744 +1360 0.440843671441774 0.0428833238767342 0.305922172336961 0.0920381752280791 0 0.440843671441774 +1370 0.440625256291648 0.0432990898112337 0.306724974655946 0.0906011918244685 0 0.440625256291648 +1380 0.440407964082792 0.0437147744579734 0.307513068397574 0.0891801212272437 0 0.440407964082791 +1390 0.440191785694851 0.0441303754953021 0.308286588366425 0.0877748218331236 0 0.44019178569485 +1400 0.439976712018596 0.0445458909815439 0.309045667261952 0.0863851537751001 0 0.439976712018596 +1410 0.439762733150696 0.0449613219390581 0.309790433228675 0.0850109779829631 0 0.439762733150696 +1420 0.439549841306868 0.0453766631431862 0.310521018011359 0.0836521601523232 0 0.439549841306868 +1430 0.439338027884298 0.0457919123530222 0.311237549027423 0.0823085665038531 0 0.439338027884298 +1440 0.439127284465263 0.0462070670464795 0.311940152647833 0.0809800647709502 0 0.439127284465263 +1450 0.438917602581491 0.0466221254036239 0.312628952311436 0.0796665248664306 0 0.438917602581491 +1460 0.438708973787445 0.047037085740404 0.313304070451614 0.0783678175954265 0 0.438708973787445 +1470 0.438501389781314 0.0474519464756628 0.313965627036148 0.0770838162695032 0 0.438501389781314 +1480 0.438294842225595 0.0478667063106975 0.314613741060234 0.0758143948546633 0 0.438294842225595 +1490 0.438089323235239 0.0482813631979058 0.315248529277766 0.074559430759567 0 0.438089323235239 +1500 0.437884824884554 0.0486959153414541 0.315870107694613 0.0733188018484869 0 0.437884824884554 +1510 0.437681339066706 0.0491103618918775 0.316478589887018 0.0720923872878106 0 0.437681339066706 +1520 0.437478857926716 0.0495247015518446 0.317074088343141 0.0708800680317303 0 0.437478857926716 +1530 0.437277373561739 0.0499389335297977 0.317656713593349 0.0696817264385921 0 0.437277373561739 +1540 0.437076878271982 0.0503530567224081 0.318226575037053 0.0684972465125212 0 0.437076878271982 +1550 0.436877364629293 0.0507670694908236 0.318783781170107 0.067326513968362 0 0.436877364629293 +1560 0.436678825016339 0.0511809710801582 0.319328438488115 0.066169415448066 0 0.436678825016339 +1570 0.436481251990724 0.0515947605645857 0.319860652009781 0.0650258394163574 0 0.436481251990724 +1580 0.436284638262365 0.0520084368018543 0.320380525815688 0.0638956756448236 0 0.436284638262366 +1590 0.436088976527405 0.0524219989996761 0.32088816237117 0.0627788151565587 0 0.436088976527405 +1600 0.435894259566785 0.0528354463335026 0.321383663165252 0.0616751500680304 0 0.435894259566785 +1610 0.435700480404787 0.0532487775788413 0.321867128466958 0.0605845743589876 0 0.435700480404787 +1620 0.435507631927548 0.0536619921930414 0.322338656897719 0.0595069828367873 0 0.435507631927548 +1630 0.435315707288905 0.0540750890725945 0.322798346358803 0.0584422718575077 0 0.435315707288905 +1640 0.435124699525443 0.0544880677104212 0.323246293261923 0.0573903385530991 0 0.435124699525443 +1650 0.434934601875669 0.0549009272854378 0.323682592914532 0.0563510816756992 0 0.434934601875669 +1660 0.434745407744692 0.0553136667064795 0.324107339769578 0.0553244012686353 0 0.434745407744693 +1670 0.434557110017809 0.0557262868402225 0.324520625207785 0.054310197969802 0 0.434557110017809 +1680 0.434369702403047 0.056138785997629 0.324922542678042 0.0533083737273764 0 0.434369702403047 +1690 0.434183176371174 0.0565511701809148 0.32531317618982 0.0523188300004393 0 0.434183176371174 +1700 0.433997527391334 0.0569634325555453 0.325692621945697 0.0513414728900919 0 0.433997527391334 +1710 0.433812749451541 0.0573755714112144 0.32606096973242 0.0503762083079063 0 0.43381274945154 +1720 0.433628836364504 0.0577875858477775 0.326418307529282 0.0494229429874447 0 0.433628836364504 +1730 0.433445781923718 0.0581994751475407 0.326764722635658 0.048481584140519 0 0.433445781923718 +1740 0.433263579886109 0.0586112390431259 0.327100300526251 0.0475520403167324 0 0.433263579886109 +1750 0.433082224084558 0.0590228771889987 0.327425126054812 0.0466342208407476 0 0.433082224084559 +1760 0.432901708432193 0.0594343891539749 0.327739283434843 0.0457280358433745 0 0.432901708432193 +1770 0.432722027119511 0.0598457739462246 0.328042856028359 0.0448333971449276 0 0.432722027119511 +1780 0.432543174409041 0.0602570305393375 0.328335926405016 0.0439502174646884 0 0.432543174409041 +1790 0.432365144606493 0.0606681579351838 0.328618576407274 0.0430784102640361 0 0.432365144606494 +1800 0.432187932101585 0.0610791550123792 0.328890887380175 0.0422178897090301 0 0.432187932101585 +1810 0.432011531209591 0.0614900211651439 0.32915293901837 0.0413685710260772 0 0.432011531209591 +1820 0.431835935594994 0.0619007580086444 0.329404808354879 0.0405303692314713 0 0.431835935594994 +1830 0.431661139868729 0.0623113643762961 0.329646573987351 0.0397032015050819 0 0.431661139868729 +1840 0.431487138399997 0.0627218400540741 0.329878312868175 0.0388869854777481 0 0.431487138399997 +1850 0.431313925653634 0.0631321846454273 0.330100101600704 0.0380816394075022 0 0.431313925653634 +1860 0.431141496344355 0.0635423970924848 0.330312016825194 0.0372870824266764 0 0.431141496344355 +1870 0.430969843028812 0.063952483823277 0.330514125732306 0.0365032334732286 0 0.430969843028812 +1880 0.430798961837283 0.0643624393859325 0.330706508503889 0.0357300139474611 0 0.430798961837283 +1890 0.430628847958432 0.0647722618067328 0.330889240108421 0.0349673460432787 0 0.430628847958432 +1900 0.430459495915328 0.0651819514145952 0.331062392631777 0.034215151868956 0 0.430459495915328 +1910 0.430290900853697 0.0655915065984029 0.331226039755012 0.033473354500282 0 0.430290900853697 +1920 0.430123057763199 0.0660009265257128 0.331380253254683 0.0327418779828034 0 0.430123057763199 +1930 0.429955961533266 0.0664102108269541 0.331525103875672 0.0320206468306393 0 0.429955961533266 +1940 0.429789606938626 0.0668193595133978 0.331660661948321 0.0313095854769068 0 0.429789606938626 +1950 0.429623988885572 0.0672283725117359 0.331786996465892 0.0306086199079445 0 0.429623988885572 +1960 0.429459103198818 0.0676372467833704 0.331904179308414 0.0299176771070336 0 0.429459103198817 +1970 0.429294944202043 0.0680459843449261 0.332012276563166 0.0292366832939512 0 0.429294944202043 +1980 0.429131506707577 0.0684545857985981 0.332111355013262 0.0285655658957173 0 0.429131506707577 +1990 0.428968787144363 0.0688630465265093 0.332201486525793 0.0279042540920603 0 0.428968787144363 +2000 0.428806779452763 0.0692713702492374 0.33228273358358 0.0272526756199457 0 0.428806779452763 +2010 0.42864547958226 0.0696795542481675 0.332355164739362 0.0266107605947307 0 0.42864547958226 +2020 0.428484883245173 0.0700875966770316 0.332418847251794 0.0259784393163471 0 0.428484883245173 +2030 0.428324984958427 0.0704954996769224 0.332473843964522 0.0253556413169829 0 0.428324984958427 +2040 0.428165780984084 0.0709032598415467 0.332520222758224 0.0247422983843134 0 0.428165780984084 +2050 0.428007266980916 0.0713108759054014 0.332558048624407 0.0241383424511075 0 0.428007266980916 +2060 0.427849437651967 0.0717183498262314 0.332587382843043 0.0235437049826919 0 0.427849437651967 +2070 0.427692288529164 0.0721256809215442 0.33260828911432 0.0229583184933 0 0.427692288529164 +2080 0.427535815412773 0.0725328677090307 0.332620831639374 0.0223821160643689 0 0.427535815412773 +2090 0.427380013667213 0.072939910302017 0.332625072279799 0.0218150310853972 0 0.427380013667214 +2100 0.427224879289353 0.0733468068680316 0.332621074390164 0.0212569980311571 0 0.427224879289353 +2110 0.427070407575773 0.0737535578816815 0.33260889888685 0.0207079508072421 0 0.427070407575773 +2120 0.42691659425079 0.0741601625828246 0.332588607278011 0.0201678243899541 0 0.42691659425079 +2130 0.42676343505056 0.0745666202018714 0.332560260960893 0.0196365538877951 0 0.42676343505056 +2140 0.426610925641703 0.0749729303410152 0.332523920356386 0.0191140749443021 0 0.426610925641703 +2150 0.42645906264756 0.0753790894986689 0.332479648968799 0.0186003241800921 0 0.42645906264756 +2160 0.426307842073313 0.0757850962918447 0.332427507727769 0.0180952380536992 0 0.426307842073313 +2170 0.426157259027571 0.0761909524306535 0.332367553724285 0.0175987528726324 0 0.426157259027571 +2180 0.426007309472312 0.0765966568453997 0.332299846857847 0.0171108057690658 0 0.426007309472312 +2190 0.42585798928455 0.0770022088066036 0.332224446421899 0.0166313340560473 0 0.42585798928455 +2200 0.425709294539754 0.0774076070470801 0.332141411803367 0.0161602756893071 0 0.425709294539754 +2210 0.425561221174843 0.0778128507763156 0.33205080180278 0.0156975685957471 0 0.425561221174843 +2220 0.425413765287399 0.078217938751326 0.331952675384646 0.0152431511514277 0 0.4254137652874 +2230 0.425266922922551 0.0786228699411273 0.33184709112924 0.0147969618521827 0 0.425266922922551 +2240 0.425120690244954 0.079027643010299 0.331734107573185 0.0143589396614701 0 0.425120690244954 +2250 0.42497506337792 0.0794322568238804 0.331613782778593 0.0139290237754467 0 0.42497506337792 +2260 0.424830038552614 0.0798367099232419 0.331486175020169 0.0135071536092034 0 0.424830038552614 +2270 0.424685611915437 0.0802410011502227 0.331351342168376 0.0130932685968386 0 0.424685611915437 +2280 0.424541779626556 0.0806451293724847 0.331209341775315 0.0126873084787565 0 0.424541779626556 +2290 0.424398537529335 0.0810490945417432 0.331060230082451 0.0122892129051406 0 0.424398537529335 +2300 0.42425588218223 0.0814528942864597 0.33090406565324 0.0118989222425304 0 0.42425588218223 +2310 0.424113810080523 0.081856526452301 0.330740906784438 0.0115163768437834 0 0.424113810080523 +2320 0.423972317409755 0.0822599899320771 0.330570810556958 0.01114151692072 0 0.423972317409755 +2330 0.42383140056019 0.082663282982101 0.330393834569157 0.0107742830089325 0 0.42383140056019 +2340 0.423691055935424 0.0830664038297741 0.330210036388609 0.0104146157170405 0 0.423691055935424 +2350 0.423551279980931 0.0834693505713213 0.330019473693713 0.0100624557158967 0 0.423551279980931 +2360 0.42341206894783 0.083872121955803 0.329822203421704 0.00971774357032254 0 0.423412068947829 +2370 0.423273419671638 0.0842747147988716 0.329618284586271 0.00938042028649523 0 0.423273419671638 +2380 0.423135328423159 0.0846771278000725 0.329407774114258 0.00905042650882896 0 0.423135328423159 +2390 0.422997791734857 0.0850793587699245 0.329190729982432 0.00872770298250057 0 0.422997791734857 +2400 0.422860806027855 0.0854814058716393 0.328967209852539 0.00841219030367653 0 0.422860806027855 +2410 0.422724368029307 0.0858832662796478 0.328737272351844 0.00810382939781493 0 0.422724368029307 +2420 0.422588474105974 0.0862849383062322 0.328500975107319 0.0078025606924231 0 0.422588474105974 +2430 0.422453120740654 0.0866864198714675 0.328258376201023 0.00750832466816376 0 0.422453120740654 +2440 0.42231830454242 0.0870877084507361 0.328009534302234 0.0072210617894502 0 0.422318304542421 +2450 0.422184021131636 0.0874888048245077 0.327754504391891 0.00694071191523704 0 0.422184021131636 +2460 0.42205026764135 0.0878897045990795 0.327493347698696 0.00666721534357484 0 0.42205026764135 +2470 0.421917041122617 0.0882904036235475 0.327226125306553 0.00640051219251615 0 0.421917041122617 +2480 0.42178433815371 0.0886908992841975 0.326952896758109 0.00614054211140294 0 0.42178433815371 +2490 0.421652155373411 0.0890911886778746 0.326673722270312 0.00588724442522354 0 0.42165215537341 +2500 0.421520489532435 0.0894912684669756 0.32638866278781 0.00564055827764975 0 0.421520489532435 +2510 0.42138933727417 0.0898911356329241 0.326097779059446 0.00540042258180018 0 0.42138933727417 +2520 0.421258695199144 0.0902907871537431 0.325801132428879 0.00516677561652211 0 0.421258695199144 +2530 0.421128560099796 0.0906902193245424 0.32549878516869 0.00493955560656335 0 0.421128560099796 +2540 0.420998928570326 0.0910894289800615 0.325190799445076 0.00471870014518778 0 0.420998928570326 +2550 0.420869797335073 0.0914884124176672 0.324877238436346 0.00450414648105936 0 0.420869797335073 +2560 0.420741163099989 0.0918871658584301 0.324558165961107 0.00429583128045217 0 0.420741163099989 +2570 0.420613022800991 0.0922856846108202 0.324233647436127 0.00409369075404368 0 0.420613022800991 +2580 0.420485373046611 0.0926839649755392 0.323903747582575 0.00389766048849754 0 0.420485373046611 +2590 0.420358210393066 0.0930820032656116 0.323568531762922 0.00370767536453182 0 0.420358210393066 +2600 0.420231531625953 0.0934797948516396 0.323228067099134 0.00352366967517947 0 0.420231531625953 +2610 0.420105333427577 0.0938773352817929 0.32288242119093 0.00334557695485399 0 0.420105333427577 +2620 0.41997961262306 0.0942746194368676 0.322531663148258 0.00317333003793499 0 0.41997961262306 +2630 0.419854366007485 0.0946716420896807 0.322175863041357 0.00300686087644755 0 0.419854366007485 +2640 0.419729590105994 0.0950683986826737 0.321815091131083 0.00284610029223673 0 0.419729590105994 +2650 0.419605281856922 0.0954648830657219 0.321449420307144 0.00269097848405556 0 0.419605281856922 +2660 0.419481437817991 0.0958610901095617 0.321078923333343 0.00254142437508629 0 0.419481437817991 +2670 0.419358054796153 0.0962570135850767 0.320703675275689 0.00239736593538706 0 0.419358054796153 +2680 0.419235129405077 0.096652647623024 0.320323751952091 0.00225872982996163 0 0.419235129405077 +2690 0.41911265828296 0.0970479859915189 0.319939230716029 0.00212544157541195 0 0.41911265828296 +2700 0.418990636854966 0.0974430263003636 0.319550185493289 0.00199742506131319 0 0.418990636854966 +2710 0.418869062999154 0.0978377573566711 0.319156702463406 0.00187460317907635 0 0.418869062999154 +2720 0.418747933330545 0.0982321719327782 0.318758864416092 0.00175689698167464 0 0.418747933330545 +2730 0.418627244486197 0.0986262623464631 0.318356756183247 0.00164422595648694 0 0.418627244486197 +2740 0.418506993106155 0.0990200204717015 0.317950464840184 0.00153650779426979 0 0.418506993106155 +2750 0.418387175781639 0.0994134379001719 0.31754007957259 0.0014336583088766 0 0.418387175781638 +2760 0.418267789179338 0.0998065054770269 0.317125692390877 0.00133559131143398 0 0.418267789179338 +2770 0.418148829706359 0.100199214424041 0.316707396864283 0.00124221841803558 0 0.418148829706359 +2780 0.41803029388017 0.100591555033082 0.31628528986043 0.001153448986657 0 0.418030293880169 +2790 0.417912178219791 0.100983516985691 0.315859471366581 0.00106918986751843 0 0.41791217821979 +2800 0.417794479158506 0.10137508962158 0.315430044283882 0.000989345253044353 0 0.417794479158506 +2810 0.417677193275433 0.101766261103678 0.314997115604415 0.00091381656734108 0 0.417677193275433 +2820 0.417560316783121 0.102157020119208 0.314560794560318 0.000842502103594881 0 0.417560316783121 +2830 0.417443845818292 0.102547354838851 0.31412119406315 0.000775296916290516 0 0.417443845818292 +2840 0.417327776907825 0.102937251239884 0.313678433055426 0.000712092612514803 0 0.417327776907825 +2850 0.417212106305962 0.103326695330026 0.313232633995625 0.000652776980310418 0 0.417212106305962 +2860 0.4170968302574 0.103715672178741 0.312783924298786 0.000597233779872221 0 0.4170968302574 +2870 0.41698194510007 0.104104165483933 0.312332437181691 0.000545342434446151 0 0.41698194510007 +2880 0.416867446661543 0.104492159562787 0.311878309549417 0.000496977549338103 0 0.416867446661543 +2890 0.416753330904613 0.104879637044229 0.311421685172748 0.000452008687636219 0 0.416753330904613 +2900 0.416639593643823 0.105266579748876 0.310962713978911 0.00041029991603621 0 0.416639593643823 +2910 0.416526230722781 0.105652967959807 0.310501553415289 0.00037170934768457 0 0.416526230722781 +2920 0.416413238004462 0.1060387803274 0.310038369069811 0.000336088607251058 0 0.416413238004462 +2930 0.416300611072742 0.106423994776527 0.309573334023322 0.000303282272892662 0 0.416300611072742 +2940 0.416188345581263 0.10680858715462 0.309106631233296 0.000273127193346156 0 0.416188345581263 +2950 0.416076437050413 0.107192532227104 0.3086384508217 0.000245454001609847 0 0.416076437050413 +2960 0.415964880269379 0.107575808593785 0.308168972966002 0.000220098709592496 0 0.415964880269379 +2970 0.415853671235404 0.107958393256096 0.307698370168411 0.000196907810897002 0 0.415853671235404 +2980 0.415742805516276 0.10834026616472 0.307226805042486 0.000175734309069943 0 0.415742805516276 +2990 0.415632279188415 0.108721409738738 0.306754420945037 0.000156448504640386 0 0.415632279188415 +3000 0.415522088366759 0.109101809348928 0.306281345515535 0.000138933502295226 0 0.415522088366759 +3010 0.415412229380687 0.109481450634594 0.305807702121707 0.00012307662438593 0 0.415412229380687 +3020 0.415302698419087 0.109860319800219 0.305333613129143 0.000108765489725053 0 0.415302698419087 +3030 0.415193491775501 0.110238402563937 0.304859201956855 9.58872547082936e-05 0 0.415193491775501 +3040 0.415084605585286 0.11061568600342 0.304384587107219 8.43324746464453e-05 0 0.415084605585285 +3050 0.414976036347436 0.110992156627023 0.303909885202889 7.39945175237477e-05 0 0.414976036347436 +3060 0.414867780344681 0.111367802017269 0.30343521024491 6.47680825019088e-05 0 0.414867780344682 +3070 0.414759834021692 0.111742610084615 0.302960672295048 5.65516420290873e-05 0 0.414759834021692 +3080 0.414652193814798 0.112116570146868 0.3024863743354 4.92493325302874e-05 0 0.414652193814798 +3090 0.414544856497393 0.112489672600995 0.302012409145575 4.27747508232629e-05 0 0.414544856497394 +3100 0.414437819026588 0.112861909327502 0.301538859688684 3.70500104018557e-05 0 0.414437819026588 +3110 0.414331078335843 0.113233273044106 0.30106580455323 3.20007385075534e-05 0 0.414331078335843 +3120 0.414224631587837 0.113603757659687 0.300593313430419 2.75604977315707e-05 0 0.414224631587837 +3130 0.414118475927152 0.113973357963244 0.300121451511615 2.3666452292529e-05 0 0.414118475927152 +3140 0.41401260869169 0.114342069334729 0.299650278519481 2.02608374794543e-05 0 0.41401260869169 +3150 0.413907027230923 0.114709888007416 0.299179849502336 1.72897211717241e-05 0 0.413907027230923 +3160 0.413801728965665 0.115076811131047 0.298710213846041 1.4703988577817e-05 0 0.413801728965665 +3170 0.413696711544375 0.115442836375544 0.29824141526885 1.24598999817276e-05 0 0.413696711544375 +3180 0.413591972674414 0.11580796238768 0.297773491551356 1.05187353782176e-05 0 0.413591972674414 +3190 0.413487510215722 0.116172188220154 0.29730647643584 8.8455597275486e-06 0 0.413487510215722 +3200 0.413383322003293 0.1165355136341 0.296840400329149 7.40804004285742e-06 0 0.413383322003293 +3210 0.413279406115707 0.116897938174463 0.296375291416396 6.17652484853402e-06 0 0.413279406115707 +3220 0.413175760826759 0.117259461672901 0.295911173830975 5.12532288262703e-06 0 0.413175760826759 +3230 0.413072383751012 0.117620086751079 0.295448066253704 4.23074622947696e-06 0 0.413072383751012 +3240 0.412969272946707 0.1179798148063 0.294985987612721 3.4705276871283e-06 0 0.412969272946707 +3250 0.412866426585174 0.118338647530256 0.294524953875561 2.8251793568099e-06 0 0.412866426585174 +3260 0.412763842680857 0.118696587668486 0.294064977635029 2.27737734176786e-06 0 0.412763842680857 +3270 0.412661519676269 0.119053637454174 0.293606068356779 1.8138653153911e-06 0 0.412661519676269 +3280 0.412559455932274 0.119409800233014 0.293148230903881 1.42479537889906e-06 0 0.412559455932274 +3290 0.412457649796786 0.11976507992958 0.292691467362068 1.10250513716795e-06 0 0.412457649796786 +3300 0.412356100280447 0.120119478200945 0.292235782531923 8.39547578937094e-07 0 0.412356100280447 +3310 0.412254805309597 0.120473000385631 0.291781176888916 6.28035050211622e-07 0 0.412254805309597 +3320 0.41215376332527 0.120825649984162 0.2913276533963 4.59944808339263e-07 0 0.41215376332527 +3330 0.412052972779358 0.121177430587842 0.290875214477922 3.27713594273931e-07 0 0.412052972779358 +3340 0.411952432288565 0.121528345285595 0.290423862810768 2.24192201907604e-07 0 0.411952432288565 +3350 0.411852140646789 0.121878397180341 0.289973598688058 1.44778390113921e-07 0 0.411852140646789 +3360 0.41175209643872 0.122227590477876 0.289524419545441 8.64154038898031e-08 0 0.41175209643872 +3370 0.411652298138544 0.122575929789613 0.289076322207755 4.61411759940828e-08 0 0.411652298138544 +3380 0.411552744404293 0.122923419042589 0.288629304544892 2.08168115689801e-08 0 0.411552744404293 +3390 0.41145343386228 0.123270062227585 0.288183364526026 7.10866898319633e-09 0 0.41145343386228 +3400 0.411354365221949 0.123615862992888 0.287738500762853 1.46620809244937e-09 0 0.411354365221949 +3410 0.411255537135353 0.123960825137831 0.287294711888615 1.08907034074468e-10 0 0.411255537135353 +3420 0.411156948251663 0.124304952635798 0.286851995615865 0 0 0.411156948251663 +3430 0.411058597348801 0.124648249477496 0.286410347871304 0 0 0.411058597348801 +3440 0.410960483188279 0.124990719962796 0.285969763225483 0 0 0.410960483188279 +3450 0.410862604566028 0.125332368294543 0.285530236271485 0 0 0.410862604566028 +3460 0.410764960251866 0.12567319876672 0.285091761485146 0 0 0.410764960251867 +3470 0.410667549048317 0.12601321555916 0.284654333489157 0 0 0.410667549048316 +3480 0.410570369764851 0.126352422827433 0.284217946937418 0 0 0.410570369764851 +3490 0.410473421223892 0.126690824681918 0.283782596541973 0 0 0.410473421223892 +3500 0.410376702305437 0.12702842503201 0.283348277273427 0 0 0.410376702305437 +3510 0.410280211924028 0.127365227666534 0.282914984257494 0 0 0.410280211924028 +3520 0.410183948908189 0.127701236674567 0.282482712233623 0 0 0.410183948908189 +3530 0.410087912109298 0.128036456065409 0.282051456043889 0 0 0.410087912109298 +3540 0.409992100315292 0.128370890069801 0.281621210245491 0 0 0.409992100315292 +3550 0.409896512457908 0.128704542416547 0.281191970041361 0 0 0.409896512457908 +3560 0.409801147391164 0.129037417105738 0.280763730285426 0 0 0.409801147391164 +3570 0.409706003939975 0.129369518239035 0.28033648570094 0 0 0.409706003939975 +3580 0.409611081104734 0.129700849305603 0.279910231799132 0 0 0.409611081104734 +3590 0.409516377766489 0.130031414211181 0.279484963555308 0 0 0.409516377766489 +3600 0.40942189281011 0.130361216848156 0.279060675961954 0 0 0.40942189281011 +3610 0.409327625257845 0.130690260629406 0.27863736462844 0 0 0.409327625257845 +3620 0.409233573928233 0.131018549678858 0.278215024249375 0 0 0.409233573928233 +3630 0.409139737889252 0.131346087249764 0.277793650639487 0 0 0.409139737889252 +3640 0.409046116278579 0.131672876352085 0.277373239926493 0 0 0.409046116278579 +3650 0.408952707984844 0.131998920865093 0.276953787119751 0 0 0.408952707984844 +3660 0.40885951201131 0.132324224267932 0.276535287743377 0 0 0.40885951201131 +3670 0.40876652733686 0.132648790124837 0.276117737212024 0 0 0.40876652733686 +3680 0.40867375288783 0.132972622183472 0.275701130704358 0 0 0.40867375288783 +3690 0.408581187678597 0.13329572388418 0.275285463794417 0 0 0.408581187678597 +3700 0.408488830787303 0.133618098444733 0.27487073234257 0 0 0.408488830787303 +3710 0.408396681106564 0.133939749730492 0.274456931376072 0 0 0.408396681106564 +3720 0.408304737607914 0.134260681331351 0.274044056276563 0 0 0.408304737607914 +3730 0.408212999452728 0.13458089617455 0.273632103278178 0 0 0.408212999452728 +3740 0.4081214656493 0.134900397721674 0.273221067927626 0 0 0.4081214656493 +3750 0.408030135270756 0.135219189208004 0.272810946062753 0 0 0.408030135270756 +3760 0.407939007370519 0.135537273937596 0.272401733432924 0 0 0.407939007370519 +3770 0.407848080881393 0.13585465563553 0.271993425245863 0 0 0.407848080881393 +3780 0.407757355088113 0.13617133679846 0.271586018289653 0 0 0.407757355088113 +3790 0.407666828991041 0.136487320915655 0.271179508075386 0 0 0.407666828991041 +3800 0.407576501655722 0.136802611248854 0.270773890406869 0 0 0.407576501655722 +3810 0.407486372210025 0.137117210842264 0.270369161367762 0 0 0.407486372210025 +3820 0.407396439746566 0.137431122863131 0.269965316883435 0 0 0.407396439746566 +3830 0.407306703320967 0.137744350607839 0.269562352713129 0 0 0.407306703320967 +3840 0.407217162129167 0.138056896882986 0.269160265246181 0 0 0.407217162129167 +3850 0.407127815248932 0.13836876490766 0.268759050341272 0 0 0.407127815248932 +3860 0.40703866174143 0.138679957958875 0.268358703782555 0 0 0.40703866174143 +3870 0.40694970083782 0.138990478720305 0.267959222117515 0 0 0.40694970083782 +3880 0.406860931515711 0.139300330760634 0.267560600755077 0 0 0.406860931515711 +3890 0.406772353011059 0.139609516746774 0.267162836264285 0 0 0.406772353011059 +3900 0.406683964538258 0.139918039420915 0.266765925117343 0 0 0.406683964538258 +3910 0.406595765253824 0.140225901727261 0.266369863526563 0 0 0.406595765253824 +3920 0.40650775427838 0.140533106735302 0.265974647543078 0 0 0.40650775427838 +3930 0.406419930857464 0.140839657078514 0.26558027377895 0 0 0.406419930857464 +3940 0.40633229413952 0.14114555572928 0.265186738410239 0 0 0.40633229413952 +3950 0.406244843253225 0.141450805728975 0.26479403752425 0 0 0.406244843253225 +3960 0.406157577540896 0.141755409373269 0.264402168167627 0 0 0.406157577540896 +3970 0.406070496074552 0.1420593699013 0.264011126173252 0 0 0.406070496074552 +3980 0.405983598058491 0.142362690090492 0.263620907967999 0 0 0.405983598058491 +3990 0.405896882751168 0.142665372529236 0.263231510221932 0 0 0.405896882751168 +4000 0.405810349414148 0.14296741979506 0.262842929619087 0 0 0.405810349414148 +4010 0.405723997289505 0.143268834533524 0.262455162755981 0 0 0.405723997289505 +4020 0.405637825618767 0.1435696193921 0.262068206226667 0 0 0.405637825618767 +4030 0.405551833525401 0.143869777430353 0.261682056095048 0 0 0.405551833525401 +4040 0.405466020328269 0.144169311025817 0.261296709302452 0 0 0.405466020328269 +4050 0.405380385161499 0.144468223200845 0.260912161960654 0 0 0.405380385161499 +4060 0.405294927396031 0.144766516151188 0.260528411244844 0 0 0.405294927396032 +4070 0.405209646212375 0.145064192737305 0.260145453475071 0 0 0.405209646212375 +4080 0.405124540794272 0.14536125580837 0.259763284985902 0 0 0.405124540794272 +4090 0.405039610506577 0.145657707581377 0.2593819029252 0 0 0.405039610506577 +4100 0.404954854637477 0.145953550540929 0.259001304096549 0 0 0.404954854637477 +4110 0.404870272498613 0.146248787089769 0.258621485408843 0 0 0.404870272498613 +4120 0.404785863321037 0.146543419911928 0.258242443409109 0 0 0.404785863321037 +4130 0.404701626382158 0.146837451529632 0.257864174852526 0 0 0.404701626382159 +4140 0.404617560910813 0.147130884634655 0.257486676276158 0 0 0.404617560910813 +4150 0.40453366630791 0.147423721318143 0.257109944989767 0 0 0.404533666307911 +4160 0.404449941836091 0.147715964153869 0.256733977682222 0 0 0.404449941836091 +4170 0.40436638682749 0.148007615473035 0.256358771354455 0 0 0.404366386827489 +4180 0.404283000577268 0.148298677735903 0.255984322841364 0 0 0.404283000577268 +4190 0.404199782422479 0.148589153256509 0.25561062916597 0 0 0.404199782422479 +4200 0.404116731586843 0.148879044744482 0.255237686842361 0 0 0.404116731586843 +4210 0.404033847470961 0.149168354292045 0.254865493178916 0 0 0.404033847470961 +4220 0.403951129309858 0.149457084569361 0.254494044740497 0 0 0.403951129309858 +4230 0.403868576562623 0.1497452374645 0.254123339098123 0 0 0.403868576562623 +4240 0.403786188525562 0.150032815433728 0.253753373091834 0 0 0.403786188525562 +4250 0.403703964585247 0.150319820618234 0.253384143967013 0 0 0.403703964585247 +4260 0.40362190399064 0.150606255639537 0.253015648351102 0 0 0.40362190399064 +4270 0.40354000612796 0.150892122640057 0.252647883487903 0 0 0.40354000612796 +4280 0.403458270358216 0.151177423850218 0.252280846507999 0 0 0.403458270358216 +4290 0.403376696016535 0.151462161590775 0.25191453442576 0 0 0.403376696016535 +4300 0.40329528251513 0.151746337913421 0.251548944601708 0 0 0.40329528251513 +4310 0.403214029141097 0.152029955306561 0.251184073834536 0 0 0.403214029141097 +4320 0.40313293533254 0.152313015731516 0.250819919601024 0 0 0.40313293533254 +4330 0.403052000475751 0.152595521330452 0.2504564791453 0 0 0.403052000475752 +4340 0.402971223885218 0.15287747449617 0.250093749389048 0 0 0.402971223885218 +4350 0.402890604996796 0.153158877197836 0.24973172779896 0 0 0.402890604996796 +4360 0.402810143186352 0.153439731614 0.249370411572352 0 0 0.402810143186352 +4370 0.402729837787951 0.153720040069137 0.249009797718813 0 0 0.402729837787951 +4380 0.402649688246253 0.153999804501669 0.248649883744584 0 0 0.402649688246253 +4390 0.402569693992548 0.154279026896705 0.248290667095843 0 0 0.402569693992548 +4400 0.402489854416061 0.15455770938617 0.24793214502989 0 0 0.40248985441606 +4410 0.402410168901717 0.154835854116999 0.247574314784717 0 0 0.402410168901717 +4420 0.402330636906389 0.155113462984996 0.247217173921393 0 0 0.402330636906389 +4430 0.402251257801679 0.155390538183605 0.246860719618074 0 0 0.402251257801679 +4440 0.402172030969962 0.155667081868661 0.246504949101301 0 0 0.402172030969962 +4450 0.402092955901812 0.155943095818335 0.246149860083477 0 0 0.402092955901812 +4460 0.402014031980614 0.156218582184939 0.245795449795675 0 0 0.402014031980614 +4470 0.401935258693735 0.156493542757834 0.245441715935902 0 0 0.401935258693735 +4480 0.401856635454439 0.156767979585042 0.245088655869397 0 0 0.401856635454439 +4490 0.401778161665874 0.157041894749892 0.244736266915982 0 0 0.401778161665873 +4500 0.401699836796523 0.157315290107656 0.244384546688867 0 0 0.401699836796523 +4510 0.401621660254169 0.157588167725494 0.244033492528675 0 0 0.401621660254169 +4520 0.401543631623859 0.157860529051806 0.243683102572053 0 0 0.401543631623859 +4530 0.401465750249056 0.158132376378257 0.243333373870799 0 0 0.401465750249055 +4540 0.401388015578373 0.158403711629476 0.242984303948897 0 0 0.401388015578373 +4550 0.401310427034272 0.158674536821382 0.24263589021289 0 0 0.401310427034272 +4560 0.401232984124127 0.158944853673501 0.242288130450626 0 0 0.401232984124127 +4570 0.401155686309227 0.159214664066222 0.241941022243004 0 0 0.401155686309226 +4580 0.40107853306554 0.159483969828686 0.241594563236854 0 0 0.40107853306554 +4590 0.401001523870355 0.159752772785439 0.241248751084916 0 0 0.401001523870355 +4600 0.400924658187847 0.160021074806797 0.24090358338105 0 0 0.400924658187847 +4610 0.400847935508098 0.160288877672635 0.240559057835463 0 0 0.400847935508098 +4620 0.400771355296941 0.16055618324749 0.24021517204945 0 0 0.400771355296941 +4630 0.400694917050819 0.160822993289033 0.239871923761786 0 0 0.400694917050819 +4640 0.400618620262536 0.161089309567656 0.239529310694879 0 0 0.400618620262536 +4650 0.400542464399523 0.161355133942302 0.239187330457221 0 0 0.400542464399523 +4660 0.400466448954751 0.161620468182772 0.238845980771978 0 0 0.400466448954751 +4670 0.4003905734525 0.161885313949584 0.238505259502915 0 0 0.4003905734525 +4680 0.400314837342236 0.162149673164389 0.238165164177847 0 0 0.400314837342236 +4690 0.400239240198398 0.162413547312626 0.237825692885772 0 0 0.400239240198398 +4700 0.400163781502947 0.162676938202524 0.237486843300423 0 0 0.400163781502947 +4710 0.40008846075303 0.162939847589303 0.237148613163727 0 0 0.40008846075303 +4720 0.400013277469465 0.163202277145569 0.236811000323896 0 0 0.400013277469465 +4730 0.399938231150961 0.16346422862109 0.236474002529871 0 0 0.399938231150961 +4740 0.399863321345915 0.1637257035922 0.236137617753715 0 0 0.399863321345915 +4750 0.399788547581553 0.163986703709132 0.235801843872421 0 0 0.399788547581553 +4760 0.39971390935602 0.164247230723627 0.235466678632393 0 0 0.39971390935602 +4770 0.399639406216988 0.164507286214548 0.235132120002439 0 0 0.399639406216988 +4780 0.399565037736338 0.164766871676257 0.234798166060081 0 0 0.399565037736338 +4790 0.399490803371791 0.165025989001599 0.234464814370191 0 0 0.399490803371791 +4800 0.399416702677384 0.165284639747218 0.234132062930166 0 0 0.399416702677384 +4810 0.399342735225351 0.165542825406246 0.233799909819104 0 0 0.39934273522535 +4820 0.399268900538388 0.165800547644726 0.233468352893662 0 0 0.399268900538388 +4830 0.399195198166963 0.166057808031765 0.233137390135198 0 0 0.399195198166963 +4840 0.399121627674827 0.166314608090102 0.232807019584725 0 0 0.399121627674827 +4850 0.399048188583675 0.166570949489275 0.2324772390944 0 0 0.399048188583675 +4860 0.39897488043949 0.166826833814045 0.232148046625445 0 0 0.39897488043949 +4870 0.398901702702714 0.167082262947758 0.231819439754955 0 0 0.398901702702714 +4880 0.398828654971603 0.167337238292712 0.231491416678891 0 0 0.398828654971603 +4890 0.398755736768907 0.167591761514758 0.231163975254149 0 0 0.398755736768907 +4900 0.39868294764855 0.167845834170947 0.230837113477603 0 0 0.39868294764855 +4910 0.39861028722809 0.168099457596198 0.230510829631891 0 0 0.39861028722809 +4920 0.398537755052297 0.168352633379507 0.23018512167279 0 0 0.398537755052297 +4930 0.398465350664043 0.168605363116491 0.229859987547552 0 0 0.398465350664043 +4940 0.398393073678066 0.168857648151924 0.229535425526142 0 0 0.398393073678066 +4950 0.398320923703047 0.169109489851714 0.229211433851333 0 0 0.398320923703047 +4960 0.398248900242342 0.169360889949413 0.228888010292929 0 0 0.398248900242342 +4970 0.398177002914658 0.169611849775935 0.228565153138723 0 0 0.398177002914658 +4980 0.398105231277343 0.16986237087637 0.228242860400973 0 0 0.398105231277343 +4990 0.398033584926335 0.170112454661106 0.227921130265229 0 0 0.398033584926335 +5000 0.397962063414562 0.170362102690671 0.227599960723891 0 0 0.397962063414562 +5010 0.397890666311057 0.170611316469357 0.2272793498417 0 0 0.397890666311057 +5020 0.397819393278718 0.170860097173838 0.226959296104879 0 0 0.397819393278718 +5030 0.397748243889958 0.171108446296614 0.226639797593344 0 0 0.397748243889958 +5040 0.39767721776999 0.171356365145893 0.226320852624097 0 0 0.39767721776999 +5050 0.397606314500268 0.171603855182623 0.226002459317644 0 0 0.397606314500268 +5060 0.397535533660397 0.171850917874202 0.225684615786195 0 0 0.397535533660397 +5070 0.397464874856412 0.17209755459578 0.225367320260632 0 0 0.397464874856412 +5080 0.39739433769164 0.172343766731959 0.225050570959681 0 0 0.39739433769164 +5090 0.39732392173867 0.172589555774624 0.224734365964046 0 0 0.39732392173867 +5100 0.397253626653402 0.17283492292487 0.224418703728533 0 0 0.397253626653402 +5110 0.39718345205372 0.173079869516485 0.224103582537235 0 0 0.39718345205372 +5120 0.397113397509107 0.173324397052201 0.223789000456905 0 0 0.397113397509107 +5130 0.397043462653375 0.173568506810208 0.223474955843166 0 0 0.397043462653375 +5140 0.396973647126326 0.17381220004779 0.223161447078536 0 0 0.396973647126325 +5150 0.396903950569434 0.174055478016389 0.222848472553044 0 0 0.396903950569434 +5160 0.396834372575026 0.174298342139004 0.222536030436022 0 0 0.396834372575026 +5170 0.396764912790511 0.174540793646361 0.222224119144151 0 0 0.396764912790511 +5180 0.396695570757795 0.174782834137458 0.221912736620337 0 0 0.396695570757794 +5190 0.396626346161653 0.17502446471259 0.221601881449063 0 0 0.396626346161653 +5200 0.396557238658374 0.175265686571493 0.221291552086882 0 0 0.396557238658374 +5210 0.396488247863349 0.17550650105666 0.22098174680669 0 0 0.396488247863349 +5220 0.396419373386175 0.175746909530803 0.220672463855372 0 0 0.396419373386175 +5230 0.396350614873062 0.175986913228832 0.22036370164423 0 0 0.396350614873062 +5240 0.396281971965888 0.176226513400789 0.220055458565099 0 0 0.396281971965888 +5250 0.39621344432538 0.176465711230914 0.219747733094465 0 0 0.39621344432538 +5260 0.396145031556698 0.176704508097411 0.219440523459287 0 0 0.396145031556697 +5270 0.396076733311134 0.176942905217448 0.219133828093686 0 0 0.396076733311134 +5280 0.396008549263866 0.177180903724834 0.218827645539032 0 0 0.396008549263866 +5290 0.395940479055354 0.177418504874553 0.218521974180801 0 0 0.395940479055354 +5300 0.395872522295659 0.177655710027698 0.218216812267961 0 0 0.395872522295659 +5310 0.395804678670421 0.177892520281552 0.21791215838887 0 0 0.395804678670422 +5320 0.395736947826335 0.17812893686934 0.217608010956995 0 0 0.395736947826335 +5330 0.395669329416645 0.178364961001418 0.217304368415227 0 0 0.395669329416645 +5340 0.395601823060774 0.178600594006206 0.217001229054569 0 0 0.395601823060774 +5350 0.395534428464588 0.178835836910391 0.216698591554197 0 0 0.395534428464588 +5360 0.395467145289271 0.179070690896613 0.216396454392657 0 0 0.395467145289271 +5370 0.395399973142679 0.179305157333667 0.216094815809012 0 0 0.395399973142679 +5380 0.395332911770061 0.17953923711077 0.215793674659291 0 0 0.39533291177006 +5390 0.39526596077442 0.179772931613649 0.215493029160771 0 0 0.39526596077442 +5400 0.395199119840774 0.180006241941758 0.215192877899016 0 0 0.395199119840774 +5410 0.395132388676125 0.180239169117821 0.214893219558305 0 0 0.395132388676125 +5420 0.395065766910348 0.180471714433768 0.214594052476581 0 0 0.395065766910348 +5430 0.394999254186499 0.180703879135521 0.214295375050978 0 0 0.394999254186499 +5440 0.394932850220389 0.18093566421505 0.213997186005339 0 0 0.39493285022039 +5450 0.394866554672414 0.18116707085776 0.213699483814654 0 0 0.394866554672413 +5460 0.394800367166611 0.181398100375951 0.21340226679066 0 0 0.394800367166611 +5470 0.394734287471307 0.181628753578291 0.213105533893016 0 0 0.394734287471307 +5480 0.394668315221202 0.18185903173987 0.212809283481332 0 0 0.394668315221202 +5490 0.394602450097176 0.182088935974588 0.212513514122588 0 0 0.394602450097176 +5500 0.394536691799849 0.182318467327439 0.212218224472409 0 0 0.394536691799849 +5510 0.394471039992296 0.182547626974465 0.21192341301783 0 0 0.394471039992296 +5520 0.394405494327496 0.182776416126959 0.211629078200537 0 0 0.394405494327496 +5530 0.394340054577637 0.183004835580105 0.211335218997532 0 0 0.394340054577637 +5540 0.394274720331875 0.183232886767965 0.21104183356391 0 0 0.394274720331875 +5550 0.39420949136437 0.183460570478841 0.21074892088553 0 0 0.39420949136437 +5560 0.39414436734137 0.183687887877705 0.210456479463665 0 0 0.39414436734137 +5570 0.394079347915998 0.183914840175344 0.210164507740654 0 0 0.394079347915998 +5580 0.394014432836715 0.184141428249758 0.209873004586957 0 0 0.394014432836715 +5590 0.39394962177644 0.184367653242635 0.209581968533805 0 0 0.39394962177644 +5600 0.39388491442163 0.18459351624841 0.209291398173219 0 0 0.39388491442163 +5610 0.393820310512973 0.184819018172214 0.209001292340759 0 0 0.393820310512973 +5620 0.393755809692289 0.18504416026429 0.208711649427999 0 0 0.393755809692289 +5630 0.393691411711266 0.185268943391372 0.208422468319894 0 0 0.393691411711266 +5640 0.393627116272729 0.185493368590766 0.208133747681963 0 0 0.393627116272729 +5650 0.393562922829392 0.185717437772788 0.207845485056604 0 0 0.393562922829392 +5660 0.393498831196481 0.185941151582395 0.207557679614086 0 0 0.393498831196481 +5670 0.39343484119512 0.186164510643961 0.20727033055116 0 0 0.393434841195121 +5680 0.393370952571083 0.186387515844871 0.206983436726212 0 0 0.393370952571083 +5690 0.393307164995937 0.186610168331529 0.206696996664408 0 0 0.393307164995937 +5700 0.393243478219079 0.186832468978672 0.206411009240406 0 0 0.393243478219079 +5710 0.3931798919299 0.187054418870488 0.206125473059412 0 0 0.3931798919299 +5720 0.393116405828643 0.187276019053295 0.205840386775347 0 0 0.393116405828643 +5730 0.393053019679551 0.187497270350002 0.20555574932955 0 0 0.393053019679552 +5740 0.392989733138769 0.187718173960853 0.205271559177916 0 0 0.392989733138769 +5750 0.392926546007643 0.187938730579248 0.204987815428396 0 0 0.392926546007644 +5760 0.392863457944229 0.188158941398759 0.20470451654547 0 0 0.392863457944229 +5770 0.392800468692103 0.188378807314442 0.20442166137766 0 0 0.392800468692103 +5780 0.392737577954531 0.188598329362051 0.20413924859248 0 0 0.392737577954531 +5790 0.392674785487063 0.18881750839485 0.203857277092213 0 0 0.392674785487063 +5800 0.39261209101454 0.189036345373288 0.203575745641252 0 0 0.39261209101454 +5810 0.392549494174671 0.189254841561955 0.203294652612716 0 0 0.392549494174671 +5820 0.392486994774977 0.189472997632707 0.20301399714227 0 0 0.392486994774976 +5830 0.392424592500414 0.189690814685208 0.202733777815206 0 0 0.392424592500413 +5840 0.392362287142814 0.189908293446077 0.202453993696737 0 0 0.392362287142814 +5850 0.392300078399363 0.190125434972297 0.202174643427066 0 0 0.392300078399363 +5860 0.392237966032626 0.190342240092646 0.20189572593998 0 0 0.392237966032626 +5870 0.39217594975606 0.190558709807303 0.201617239948757 0 0 0.39217594975606 +5880 0.39211402934586 0.190774844897475 0.201339184448384 0 0 0.392114029345859 +5890 0.392052204498126 0.190990646423925 0.201061558074201 0 0 0.392052204498126 +5900 0.391990474958666 0.191206115273924 0.200784359684742 0 0 0.391990474958666 +5910 0.391928840411132 0.191421252551697 0.200507587859435 0 0 0.391928840411131 +5920 0.391867300676651 0.191636058881595 0.200231241795056 0 0 0.391867300676651 +5930 0.391805855491565 0.191850535183935 0.199955320307631 0 0 0.391805855491565 +5940 0.391744504569936 0.192064682456789 0.199679822113147 0 0 0.391744504569936 +5950 0.391683247691406 0.192278501469319 0.199404746222087 0 0 0.391683247691406 +5960 0.391622084538459 0.192491993329832 0.199130091208627 0 0 0.391622084538459 +5970 0.391561014935471 0.192705158651345 0.198855856284125 0 0 0.391561014935471 +5980 0.391500038569907 0.192917998524769 0.198582040045138 0 0 0.391500038569907 +5990 0.39143915522067 0.193130513721853 0.198308641498817 0 0 0.39143915522067 +6000 0.391378364631441 0.193342705137284 0.198035659494157 0 0 0.391378364631441 +6010 0.391317666563995 0.193554573602596 0.1977630929614 0 0 0.391317666563995 +6020 0.391257060728792 0.193766120128434 0.197490940600358 0 0 0.391257060728792 +6030 0.391196546917149 0.193977345443219 0.19721920147393 0 0 0.391196546917149 +6040 0.391136124842301 0.194188250547904 0.196947874294398 0 0 0.391136124842301 +6050 0.391075794310259 0.194398836119623 0.196676958190636 0 0 0.391075794310259 +6060 0.391015555046624 0.194609103116164 0.19640645193046 0 0 0.391015555046624 +6070 0.39095540681571 0.194819052360205 0.196136354455505 0 0 0.39095540681571 +6080 0.390895349388086 0.195028684652577 0.195866664735509 0 0 0.390895349388086 +6090 0.390835382515949 0.195238000858246 0.195597381657702 0 0 0.390835382515949 +6100 0.390775505965668 0.195447001792708 0.19532850417296 0 0 0.390775505965667 +6110 0.390715719500725 0.195655688281535 0.195060031219189 0 0 0.390715719500724 +6120 0.390656022874485 0.195864061185611 0.194791961688875 0 0 0.390656022874486 +6130 0.390596415855715 0.196072121312072 0.194524294543642 0 0 0.390596415855715 +6140 0.390536898208406 0.196279869484706 0.1942570287237 0 0 0.390536898208406 +6150 0.390477469706518 0.196487306492514 0.193990163214005 0 0 0.390477469706518 +6160 0.390418130139052 0.196694433071997 0.193723697067055 0 0 0.390418130139052 +6170 0.390358879221931 0.196901250214731 0.193457629007201 0 0 0.390358879221931 +6180 0.390299716775208 0.19710775854883 0.193191958226378 0 0 0.390299716775208 +6190 0.390240642527452 0.197313959021733 0.192926683505719 0 0 0.390240642527451 +6200 0.390181656281297 0.197519852322346 0.19266180395895 0 0 0.390181656281297 +6210 0.390122757802992 0.197725439266587 0.192397318536406 0 0 0.390122757802992 +6220 0.390063946881306 0.197930720591767 0.19213322628954 0 0 0.390063946881307 +6230 0.390005223249445 0.198135697229136 0.191869526020309 0 0 0.390005223249445 +6240 0.389946586726839 0.198340369808982 0.191606216917857 0 0 0.389946586726839 +6250 0.389888037039062 0.198544739289195 0.191343297749867 0 0 0.389888037039062 +6260 0.389829574019786 0.198748806250345 0.191080767769442 0 0 0.389829574019786 +6270 0.389771197427905 0.198952571534028 0.190818625893877 0 0 0.389771197427904 +6280 0.389712907026917 0.199156035965754 0.190556871061163 0 0 0.389712907026916 +6290 0.389654702614412 0.199359200252042 0.190295502362369 0 0 0.389654702614411 +6300 0.389596583963656 0.199562065184314 0.190034518779342 0 0 0.389596583963656 +6310 0.389538550885011 0.199764631424513 0.189773919460499 0 0 0.389538550885011 +6320 0.389480603111094 0.199966899905943 0.189513703205151 0 0 0.389480603111094 +6330 0.389422740465482 0.200168871244414 0.189253869221069 0 0 0.389422740465482 +6340 0.38936496271008 0.200370546271005 0.188994416439075 0 0 0.38936496271008 +6350 0.389307269633809 0.200571925722492 0.188735343911317 0 0 0.389307269633809 +6360 0.389249661021055 0.200773010351484 0.188476650669571 0 0 0.389249661021055 +6370 0.389192136684513 0.200973800811774 0.188218335872739 0 0 0.389192136684514 +6380 0.389134696370393 0.201174297989225 0.187960398381168 0 0 0.389134696370393 +6390 0.389077339891513 0.201374502537203 0.187702837354309 0 0 0.389077339891513 +6400 0.389020067056172 0.20157441512484 0.187445651931332 0 0 0.389020067056172 +6410 0.388962877629737 0.201774036571135 0.187188841058602 0 0 0.388962877629737 +6420 0.38890577142854 0.201973367517185 0.186932403911355 0 0 0.38890577142854 +6430 0.388848748220814 0.20217240877198 0.186676339448834 0 0 0.388848748220814 +6440 0.388791807820019 0.202371160986642 0.186420646833376 0 0 0.388791807820019 +6450 0.388734950002821 0.202569624940729 0.186165325062092 0 0 0.38873495000282 +6460 0.388678174566162 0.202767801343016 0.185910373223146 0 0 0.388678174566162 +6470 0.388621481363515 0.202965690704965 0.18565579065855 0 0 0.388621481363515 +6480 0.388564870214348 0.203163293656728 0.18540157655762 0 0 0.388564870214348 +6490 0.388508340831072 0.203360611202138 0.185147729628934 0 0 0.388508340831072 +6500 0.388451893041943 0.203557643940678 0.184894249101266 0 0 0.388451893041943 +6510 0.388395526615951 0.203754392678696 0.184641133937254 0 0 0.388395526615951 +6520 0.388339241370328 0.203950858054143 0.184388383316185 0 0 0.388339241370329 +6530 0.38828303708697 0.204147040828328 0.184135996258642 0 0 0.38828303708697 +6540 0.388226913589466 0.204342941617008 0.183883971972458 0 0 0.388226913589466 +6550 0.388170870673669 0.204538561132769 0.1836323095409 0 0 0.388170870673669 +6560 0.388114908134925 0.204733900089963 0.183381008044962 0 0 0.388114908134925 +6570 0.388059025802203 0.204928959085581 0.183130066716622 0 0 0.388059025802203 +6580 0.388003223462422 0.205123738863385 0.182879484599037 0 0 0.388003223462422 +6590 0.387947500920525 0.205318240104228 0.182629260816297 0 0 0.387947500920525 +6600 0.387891857996009 0.20551246343816 0.182379394557849 0 0 0.387891857996009 +6610 0.387836294470186 0.205706409628522 0.182129884841664 0 0 0.387836294470186 +6620 0.387780810170305 0.205900079278302 0.181880730892003 0 0 0.387780810170305 +6630 0.38772540492896 0.206093472971839 0.181631931957121 0 0 0.38772540492896 +6640 0.387670078507299 0.206286591542856 0.181383486964443 0 0 0.387670078507299 +6650 0.387614830765597 0.206479435479059 0.181135395286538 0 0 0.387614830765597 +6660 0.387559661495397 0.206672005508081 0.180887655987315 0 0 0.387559661495397 +6670 0.387504570484759 0.206864302369701 0.180640268115058 0 0 0.387504570484759 +6680 0.387449557600169 0.207056326529959 0.18039323107021 0 0 0.387449557600169 +6690 0.387394622608669 0.207248078801994 0.180146543806675 0 0 0.387394622608669 +6700 0.387339765354096 0.207439559730904 0.179900205623193 0 0 0.387339765354096 +6710 0.387284985646796 0.20763076997868 0.179654215668116 0 0 0.387284985646796 +6720 0.387230283288683 0.207821710236747 0.179408573051936 0 0 0.387230283288683 +6730 0.387175658105897 0.20801238111197 0.179163276993928 0 0 0.387175658105897 +6740 0.387121109912725 0.208202783252583 0.178918326660142 0 0 0.387121109912725 +6750 0.387066638536333 0.208392917261873 0.17867372127446 0 0 0.387066638536333 +6760 0.387012243803994 0.208582783742745 0.17842946006125 0 0 0.387012243803994 +6770 0.386957925541691 0.208772383302613 0.178185542239078 0 0 0.386957925541691 +6780 0.386903683528485 0.20896171671267 0.177941966815814 0 0 0.386903683528485 +6790 0.386849517623719 0.209150784463882 0.177698733159838 0 0 0.386849517623719 +6800 0.386795427644255 0.2093395871955 0.177455840448755 0 0 0.386795427644255 +6810 0.386741413406428 0.209528125548613 0.177213287857815 0 0 0.386741413406428 +6820 0.386687474736345 0.209716400130199 0.176971074606146 0 0 0.386687474736345 +6830 0.386633611444504 0.20990441160172 0.176729199842784 0 0 0.386633611444504 +6840 0.386579823351734 0.210092160588578 0.176487662763156 0 0 0.386579823351734 +6850 0.386526110328109 0.210279647544283 0.176246462783826 0 0 0.386526110328109 +6860 0.386472472154912 0.210466873232276 0.176005598922636 0 0 0.386472472154912 +6870 0.386418908718552 0.210653838049048 0.175765070669503 0 0 0.386418908718552 +6880 0.386365419841955 0.210840542612678 0.175524877229277 0 0 0.386365419841955 +6890 0.386312005314127 0.211026987659655 0.175285017654472 0 0 0.386312005314127 +6900 0.386258664978216 0.211213173737468 0.175045491240748 0 0 0.386258664978216 +6910 0.386205398656989 0.21139910146476 0.174806297192229 0 0 0.386205398656989 +6920 0.386152206166405 0.211584771483927 0.174567434682478 0 0 0.386152206166405 +6930 0.38609908735592 0.21177018432045 0.17432890303547 0 0 0.38609908735592 +6940 0.386046042173251 0.211955340156825 0.174090702016426 0 0 0.386046042173251 +6950 0.385993070353586 0.212140239917385 0.173852830436201 0 0 0.385993070353586 +6960 0.385940171748121 0.212324884121536 0.173615287626585 0 0 0.385940171748121 +6970 0.385887346165198 0.212509273438262 0.173378072726937 0 0 0.385887346165198 +6980 0.385834593451157 0.212693408403925 0.173141185047231 0 0 0.385834593451157 +6990 0.385781913408419 0.212877289708173 0.172904623700247 0 0 0.385781913408419 +7000 0.385729305925029 0.213060917741796 0.172668388183233 0 0 0.385729305925029 +7010 0.385676770798561 0.213244293211364 0.172432477587197 0 0 0.385676770798561 +7020 0.385624307872098 0.213427416664601 0.172196891207497 0 0 0.385624307872098 +7030 0.38557191698679 0.213610288655975 0.171961628330815 0 0 0.38557191698679 +7040 0.385519597960242 0.213792909822145 0.171726688138097 0 0 0.385519597960242 +7050 0.38546735069745 0.213975280494728 0.171492070202722 0 0 0.38546735069745 +7060 0.385415174936738 0.214157401587106 0.171257773349632 0 0 0.385415174936738 +7070 0.3853630705537 0.214339273533523 0.171023797020177 0 0 0.385363070553701 +7080 0.385311037426852 0.21452089675803 0.170790140668822 0 0 0.385311037426852 +7090 0.385259075463875 0.214702271582856 0.170556803881019 0 0 0.385259075463875 +7100 0.385207184420708 0.214883398859917 0.170323785560791 0 0 0.385207184420708 +7110 0.385155364115791 0.215064279222944 0.170091084892847 0 0 0.385155364115791 +7120 0.385103614461154 0.215244912979005 0.169858701482148 0 0 0.385103614461154 +7130 0.385051935242222 0.215425300877076 0.169626634365147 0 0 0.385051935242222 +7140 0.385000326302344 0.215605443463956 0.169394882838388 0 0 0.385000326302344 +7150 0.384948787508231 0.215785341204893 0.169163446303338 0 0 0.384948787508231 +7160 0.38489731871724 0.215964994597786 0.168932324119454 0 0 0.38489731871724 +7170 0.384845919725317 0.216144404354891 0.168701515370427 0 0 0.384845919725317 +7180 0.384794590397861 0.216323570946039 0.168471019451822 0 0 0.384794590397861 +7190 0.384743330648765 0.216502494671788 0.168240835976978 0 0 0.384743330648765 +7200 0.384692140264939 0.216681176275936 0.168010963989004 0 0 0.384692140264939 +7210 0.384641019094317 0.216859616289275 0.167781402805042 0 0 0.384641019094317 +7220 0.384589966980159 0.217037815258906 0.167552151721253 0 0 0.384589966980159 +7230 0.384538983883486 0.217215773320892 0.167323210562594 0 0 0.384538983883486 +7240 0.384488069549463 0.217393491364742 0.16709457818472 0 0 0.384488069549462 +7250 0.384437223610433 0.217570970673769 0.166866252936663 0 0 0.384437223610432 +7260 0.384386446084141 0.217748211186034 0.166638234898108 0 0 0.384386446084141 +7270 0.3843357368916 0.217925213177252 0.166410523714348 0 0 0.3843357368916 +7280 0.384285095867745 0.218101977223578 0.166183118644167 0 0 0.384285095867745 +7290 0.38423452290443 0.218278503702502 0.165956019201929 0 0 0.38423452290443 +7300 0.384184017796269 0.218454793330934 0.165729224465335 0 0 0.384184017796269 +7310 0.384133580430773 0.218630846501513 0.16550273392926 0 0 0.384133580430773 +7320 0.384083210708316 0.218806663561994 0.165276547146322 0 0 0.384083210708316 +7330 0.384032908426618 0.218982245218435 0.165050663208183 0 0 0.384032908426618 +7340 0.383982673423143 0.219157592038179 0.164825081384964 0 0 0.383982673423143 +7350 0.383932505576771 0.219332704443995 0.164599801132775 0 0 0.383932505576771 +7360 0.383882404728874 0.219507582989577 0.164374821739297 0 0 0.383882404728874 +7370 0.383832370771199 0.219682228052794 0.164150142718405 0 0 0.383832370771199 +7380 0.383782403537087 0.219856640215365 0.163925763321722 0 0 0.383782403537087 +7390 0.383732502862036 0.220030820051494 0.163701682810542 0 0 0.383732502862036 +7400 0.38368266861773 0.220204768009069 0.163477900608661 0 0 0.38368266861773 +7410 0.383632900665694 0.220378484571445 0.163254416094249 0 0 0.383632900665694 +7420 0.383583198896237 0.220551970121499 0.163031228774738 0 0 0.383583198896237 +7430 0.383533563148466 0.220725225220835 0.162808337927631 0 0 0.383533563148466 +7440 0.383483993277941 0.220898250373625 0.162585742904316 0 0 0.383483993277941 +7450 0.383434489154241 0.221071046035105 0.162363443119137 0 0 0.383434489154241 +7460 0.383385050657527 0.221243612623577 0.16214143803395 0 0 0.383385050657527 +7470 0.383335677636366 0.221415950667628 0.161919726968738 0 0 0.383335677636366 +7480 0.383286369944183 0.221588060678877 0.161698309265306 0 0 0.383286369944183 +7490 0.383237127433505 0.221759943172083 0.161477184261422 0 0 0.383237127433505 +7500 0.383187949965154 0.221931598633052 0.161256351332102 0 0 0.383187949965154 +7510 0.383138837433526 0.222103027430401 0.161035810003125 0 0 0.383138837433526 +7520 0.38308978969063 0.222274230080693 0.160815559609937 0 0 0.38308978969063 +7530 0.383040806616588 0.222445207002368 0.160595599614219 0 0 0.383040806616588 +7540 0.382991888048909 0.222615958762604 0.160375929286306 0 0 0.382991888048909 +7550 0.382943033869436 0.222786485773833 0.160156548095604 0 0 0.382943033869437 +7560 0.38289424393332 0.222956788541658 0.159937455391662 0 0 0.38289424393332 +7570 0.382845518120335 0.223126867485724 0.159718650634612 0 0 0.382845518120335 +7580 0.382796856299152 0.223296723064447 0.159500133234705 0 0 0.382796856299152 +7590 0.382748258328301 0.223466355771625 0.159281902556676 0 0 0.382748258328302 +7600 0.382699724075408 0.22363576606932 0.159063958006088 0 0 0.382699724075408 +7610 0.382651253420638 0.223804954375818 0.158846299044819 0 0 0.382651253420638 +7620 0.382602846219231 0.223973921196403 0.158628925022828 0 0 0.382602846219231 +7630 0.382554502358038 0.224142666926032 0.158411835432006 0 0 0.382554502358038 +7640 0.382506221702866 0.224311192033106 0.15819502966976 0 0 0.382506221702866 +7650 0.382458004101919 0.224479497047474 0.157978507054445 0 0 0.382458004101919 +7660 0.382409849464752 0.224647582284842 0.15776226717991 0 0 0.382409849464751 +7670 0.382361757642396 0.224815448265179 0.157546309377217 0 0 0.382361757642396 +7680 0.382313728508627 0.224983095429087 0.15733063307954 0 0 0.382313728508627 +7690 0.382265761939303 0.225150524209878 0.157115237729426 0 0 0.382265761939304 +7700 0.382217857797598 0.225317735085154 0.156900122712444 0 0 0.382217857797598 +7710 0.382170015983447 0.225484728404188 0.156685287579259 0 0 0.382170015983447 +7720 0.382122236355584 0.225651504660082 0.156470731695501 0 0 0.382122236355584 +7730 0.382074518791155 0.225818064281655 0.1562564545095 0 0 0.382074518791155 +7740 0.382026863152581 0.225984407749131 0.15604245540345 0 0 0.382026863152581 +7750 0.381979269326678 0.226150535457584 0.155828733869094 0 0 0.381979269326678 +7760 0.381931737190082 0.226316447837622 0.15561528935246 0 0 0.381931737190082 +7770 0.38188426660932 0.226482145355134 0.155402121254186 0 0 0.381884266609319 +7780 0.381836857484616 0.226647628358389 0.155189229126227 0 0 0.381836857484616 +7790 0.381789509647377 0.226812897435868 0.154976612211509 0 0 0.381789509647377 +7800 0.381742223016644 0.226977952870163 0.154764270146481 0 0 0.381742223016644 +7810 0.381694997451365 0.22714279515362 0.154552202297745 0 0 0.381694997451365 +7820 0.381647832833362 0.22730742469874 0.154340408134622 0 0 0.381647832833362 +7830 0.381600729052666 0.227471841889375 0.15412888716329 0 0 0.381600729052666 +7840 0.381553685977699 0.227636047184802 0.153917638792897 0 0 0.381553685977699 +7850 0.381506703474806 0.227800041051545 0.153706662423261 0 0 0.381506703474806 +7860 0.381459781501152 0.227963823639128 0.153495957862024 0 0 0.381459781501152 +7870 0.381412919880629 0.228127395562256 0.153285524318373 0 0 0.381412919880629 +7880 0.381366118440433 0.228290757424106 0.153075361016327 0 0 0.381366118440433 +7890 0.381319377043197 0.228453909704164 0.152865467339033 0 0 0.381319377043197 +7900 0.381272695704487 0.228616852348095 0.152655843356392 0 0 0.381272695704487 +7910 0.381226074223305 0.22877958605749 0.152446488165815 0 0 0.381226074223305 +7920 0.381179512510193 0.228942111144604 0.152237401365589 0 0 0.381179512510193 +7930 0.38113301042499 0.229104428098673 0.152028582326316 0 0 0.38113301042499 +7940 0.381086567851745 0.229266537324428 0.151820030527318 0 0 0.381086567851745 +7950 0.381040184712171 0.229428439095132 0.151611745617039 0 0 0.381040184712171 +7960 0.380993860835438 0.229590134007076 0.151403726828362 0 0 0.380993860835438 +7970 0.38094759615096 0.229751622306635 0.151195973844325 0 0 0.38094759615096 +7980 0.380901390507432 0.229912904521952 0.15098848598548 0 0 0.380901390507432 +7990 0.380855243825462 0.230073980930138 0.150781262895324 0 0 0.380855243825463 +8000 0.380809155967371 0.230234852011776 0.150574303955595 0 0 0.380809155967371 diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/mesh.sh b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/mesh.sh new file mode 100755 index 00000000..a3543858 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/mesh.sh @@ -0,0 +1,8 @@ +cd CFD/ +rm -r 0 +rm -r constant/polyMesh +m4 system/blockMeshDict.m4 > system/blockMeshDict +blockMesh +cp -r orig.0 0 +decomposePar +./decomposeParDB.sh diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/parCFDDEMrun.sh b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/parCFDDEMrun.sh new file mode 100755 index 00000000..53707ef1 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/parCFDDEMrun.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +#===================================================================# +# CFD-DEM run script for ore reduction testcase +# Thomas Lichtenegger - January 2023 +#===================================================================# + +#- source CFDEM env vars +. ~/.bashrc + +#- include functions +source $CFDEM_PROJECT_DIR/etc/functions.sh + +#--------------------------------------------------------------------------------# +#- define variables +casePath="$(dirname "$(readlink -f ${BASH_SOURCE[0]})")" +logpath=$casePath +headerText="run_parallel_rcfdemSolverRhoSteadyPimpleChem_reductionTest_CFDDEM" +logfileName="log_$headerText" +solverName="rcfdemSolverRhoSteadyPimpleChem" +nrProcs="8" +machineFileName="none" # yourMachinefileName | none +debugMode="off" # on | off| strict +#--------------------------------------------------------------------------------# + +#- call function to run a parallel CFD-DEM case +parCFDDEMrun $logpath $logfileName $casePath $headerText $solverName $nrProcs $machineFileName $debugMode diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/parDEMrun.sh b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/parDEMrun.sh new file mode 100755 index 00000000..d19fe3b8 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/parDEMrun.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +#===================================================================# +# DEM run script for ore reduction testcase +# Thomas Lichtenegger - January 2023 +#===================================================================# + +#- source CFDEM env vars +. ~/.bashrc + +#- include functions +source $CFDEM_PROJECT_DIR/etc/functions.sh + +echo "starting DEM run in parallel..." +#--------------------------------------------------------------------------------# +#- define variables +casePath="$(dirname "$(readlink -f ${BASH_SOURCE[0]})")" +logpath="$casePath" +headerText="run_liggghts_init_DEM" +logfileName="log_$headerText" +solverName="in.liggghts_init" +nrProcs=8 +machineFileName="none" +debugMode="off" +#--------------------------------------------------------------------------------# + +#- call function to run DEM case +parDEMrun $logpath $logfileName $casePath $headerText $solverName $nrProcs $machineFileName $debugMode + diff --git a/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/target_mass_loss_pellets.txt b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/target_mass_loss_pellets.txt new file mode 100644 index 00000000..5af0a8d9 --- /dev/null +++ b/tutorials/rcfdemSolverRhoSteadyPimpleChem/reductionTest/target_mass_loss_pellets.txt @@ -0,0 +1,1668 @@ +# t [sec] mass loss [g] +5 0 +10 0.13 +15 0.48 +20 1.31 +25 1.71 +30 2.05 +35 2.58 +40 3 +45 3.39 +50 4.07 +55 4.4 +60 4.78 +65 5.31 +70 5.67 +75 6.21 +80 6.54 +85 7.02 +90 7.36 +95 7.67 +100 7.98 +105 8.25 +110 8.61 +115 8.89 +120 9.41 +125 9.78 +130 10.21 +135 10.52 +140 10.74 +145 11.11 +150 11.39 +155 11.74 +160 12.09 +165 12.71 +170 12.81 +175 13.1 +180 13.38 +185 13.66 +190 14.14 +195 14.31 +200 14.61 +205 14.88 +210 15.23 +215 15.55 +220 15.81 +225 16.14 +230 16.46 +235 16.8 +240 17.33 +245 17.43 +250 17.72 +255 17.92 +260 18.29 +265 18.62 +270 18.88 +275 19.03 +280 19.43 +285 19.67 +290 19.92 +295 20.23 +300 20.47 +305 20.77 +310 20.96 +315 21.26 +320 21.56 +325 21.8 +330 22.12 +335 22.23 +340 22.49 +345 22.79 +350 23.19 +355 23.34 +360 23.5 +365 23.74 +370 24 +375 24.34 +380 24.58 +385 24.79 +390 25.14 +395 25.29 +400 25.51 +405 25.73 +410 25.89 +415 26.21 +420 26.44 +425 26.7 +430 27.03 +435 27.17 +440 27.4 +445 27.67 +450 27.82 +455 28.03 +460 28.23 +465 28.5 +470 28.81 +475 29.03 +480 29.31 +485 29.54 +490 29.71 +495 29.99 +500 30.28 +505 30.39 +510 30.65 +515 30.83 +520 31 +525 31.15 +530 31.34 +535 31.53 +540 31.87 +545 32.02 +550 32.22 +555 32.3 +560 32.55 +565 32.67 +570 32.89 +575 33.04 +580 33.22 +585 33.38 +590 33.7 +595 33.85 +600 33.93 +605 34.15 +610 34.39 +615 34.51 +620 34.68 +625 34.85 +630 35.13 +635 35.34 +640 35.47 +645 35.65 +650 35.8 +655 35.97 +660 36.2 +665 36.41 +670 36.6 +675 36.82 +680 37.02 +685 37.13 +690 37.2 +695 37.4 +700 37.54 +705 37.71 +710 37.9 +715 38.16 +720 38.34 +725 38.46 +730 38.66 +735 38.78 +740 38.89 +745 39.09 +750 39.25 +755 39.4 +760 39.5 +765 39.71 +770 39.83 +775 39.99 +780 40.17 +785 40.26 +790 40.43 +795 40.65 +800 40.83 +805 41.01 +810 41.16 +815 41.29 +820 41.45 +825 41.63 +830 41.76 +835 41.87 +840 41.99 +845 42.22 +850 42.41 +855 42.56 +860 42.75 +865 42.82 +870 43.15 +875 43.2 +880 43.38 +885 43.46 +890 43.67 +895 43.73 +900 43.85 +905 43.92 +910 44.14 +915 44.2 +920 44.33 +925 44.45 +930 44.59 +935 44.77 +940 44.84 +945 44.97 +950 45.26 +955 45.36 +960 45.46 +965 45.71 +970 45.83 +975 45.92 +980 46.06 +985 46.14 +990 46.31 +995 46.39 +1000 46.48 +1005 46.7 +1010 46.76 +1015 46.96 +1020 46.97 +1025 47.11 +1030 47.24 +1035 47.39 +1040 47.47 +1045 47.53 +1050 47.66 +1055 47.81 +1060 47.98 +1065 48.15 +1070 48.29 +1075 48.39 +1080 48.55 +1085 48.62 +1090 48.82 +1095 48.95 +1100 49.07 +1105 49.11 +1110 49.3 +1115 49.36 +1120 49.53 +1125 49.57 +1130 49.69 +1135 49.77 +1140 49.9 +1145 50.07 +1150 50.21 +1155 50.32 +1160 50.41 +1165 50.49 +1170 50.57 +1175 50.71 +1180 50.71 +1185 50.84 +1190 50.99 +1195 51.13 +1200 51.28 +1205 51.35 +1210 51.43 +1215 51.56 +1220 51.69 +1225 51.76 +1230 51.78 +1235 51.79 +1240 52 +1245 52.02 +1250 52.35 +1255 52.43 +1260 52.54 +1265 52.63 +1270 52.68 +1275 52.78 +1280 52.89 +1285 52.99 +1290 53.14 +1295 53.2 +1300 53.36 +1305 53.55 +1310 53.55 +1315 53.65 +1320 53.81 +1325 53.85 +1330 53.95 +1335 54.08 +1340 54.16 +1345 54.28 +1350 54.45 +1355 54.42 +1360 54.54 +1365 54.54 +1370 54.74 +1375 54.76 +1380 54.88 +1385 54.97 +1390 55.02 +1395 55.16 +1400 55.19 +1405 55.38 +1410 55.37 +1415 55.56 +1420 55.56 +1425 55.58 +1430 55.68 +1435 55.9 +1440 55.92 +1445 56.01 +1450 56.09 +1455 56.24 +1460 56.32 +1465 56.46 +1470 56.59 +1475 56.56 +1480 56.66 +1485 56.79 +1490 56.92 +1495 56.86 +1500 56.98 +1505 57.26 +1510 57.27 +1515 57.44 +1520 57.52 +1525 57.43 +1530 57.39 +1535 57.74 +1540 57.81 +1545 57.88 +1550 57.73 +1555 58.05 +1560 58.2 +1565 58.39 +1570 58.46 +1575 58.59 +1580 58.53 +1585 58.68 +1590 58.76 +1595 58.87 +1600 59 +1605 59.07 +1610 59.23 +1615 59.32 +1620 59.5 +1625 59.6 +1630 59.67 +1635 59.83 +1640 59.89 +1645 59.91 +1650 60.04 +1655 60.09 +1660 60.16 +1665 60.27 +1670 60.35 +1675 60.47 +1680 60.58 +1685 60.64 +1690 60.78 +1695 60.84 +1700 60.99 +1705 61.11 +1710 61.17 +1715 61.32 +1720 61.46 +1725 61.58 +1730 61.61 +1735 61.62 +1740 61.75 +1745 61.84 +1750 61.97 +1755 62.04 +1760 62.09 +1765 62.09 +1770 62.2 +1775 62.18 +1780 62.27 +1785 62.34 +1790 62.37 +1795 62.43 +1800 62.5 +1805 62.58 +1810 62.72 +1815 62.75 +1820 62.68 +1825 62.79 +1830 62.73 +1835 62.83 +1840 62.97 +1845 63.07 +1850 63.18 +1855 63.27 +1860 63.3 +1865 63.39 +1870 63.53 +1875 63.54 +1880 63.53 +1885 63.69 +1890 63.81 +1895 63.89 +1900 63.76 +1905 63.72 +1910 63.76 +1915 63.67 +1920 63.79 +1925 63.99 +1930 64.05 +1935 64.17 +1940 64.26 +1945 64.33 +1950 64.49 +1955 64.58 +1960 64.63 +1965 64.82 +1970 64.93 +1975 65.07 +1980 65.17 +1985 65.16 +1990 65.25 +1995 65.29 +2000 65.33 +2005 65.17 +2010 65.16 +2015 65.06 +2020 65.03 +2025 65.31 +2030 65.32 +2035 65.31 +2040 65.27 +2045 65.59 +2050 65.71 +2055 65.6 +2060 65.57 +2065 65.86 +2070 65.72 +2075 65.8 +2080 65.85 +2085 65.94 +2090 66.19 +2095 66.38 +2100 66.39 +2105 66.3 +2110 66.31 +2115 66.34 +2120 66.42 +2125 66.47 +2130 66.7 +2135 66.73 +2140 67.06 +2145 67.1 +2150 67.28 +2155 67.16 +2160 67.08 +2165 67.38 +2170 67.55 +2175 67.75 +2180 67.9 +2185 67.8 +2190 67.88 +2195 68.11 +2200 68.05 +2205 68.13 +2210 68.05 +2215 68 +2220 68.14 +2225 68.08 +2230 68.35 +2235 68.3 +2240 68.55 +2245 68.67 +2250 68.78 +2255 68.86 +2260 68.83 +2265 69.03 +2270 68.99 +2275 69.11 +2280 69.14 +2285 69.11 +2290 69.29 +2295 69.22 +2300 69.11 +2305 69.39 +2310 69.35 +2315 69.5 +2320 69.52 +2325 69.68 +2330 69.63 +2335 69.96 +2340 69.96 +2345 69.98 +2350 70.23 +2355 70.27 +2360 70.28 +2365 70.38 +2370 70.51 +2375 70.63 +2380 70.55 +2385 70.54 +2390 70.66 +2395 70.81 +2400 70.72 +2405 70.9 +2410 71.02 +2415 71.15 +2420 71.21 +2425 71.31 +2430 71.51 +2435 71.6 +2440 71.6 +2445 71.63 +2450 71.6 +2455 71.59 +2460 71.54 +2465 71.79 +2470 71.64 +2475 71.74 +2480 71.63 +2485 71.59 +2490 71.63 +2495 71.46 +2500 71.59 +2505 71.69 +2510 71.92 +2515 72.1 +2520 71.9 +2525 72.11 +2530 72.23 +2535 72.46 +2540 72.28 +2545 72.51 +2550 72.63 +2555 72.77 +2560 72.88 +2565 72.91 +2570 72.97 +2575 72.99 +2580 73.13 +2585 73.2 +2590 73.27 +2595 73.16 +2600 72.97 +2605 73.36 +2610 73.12 +2615 73.39 +2620 73.23 +2625 73.21 +2630 73.22 +2635 73.52 +2640 73.54 +2645 73.57 +2650 73.6 +2655 73.58 +2660 73.81 +2665 73.93 +2670 74.03 +2675 73.99 +2680 74.17 +2685 74.18 +2690 74.36 +2695 74.52 +2700 74.54 +2705 74.64 +2710 74.69 +2715 74.79 +2720 74.9 +2725 74.98 +2730 75.08 +2735 75.07 +2740 75.13 +2745 75.18 +2750 75.24 +2755 75.27 +2760 75.04 +2765 75.16 +2770 75.05 +2775 74.95 +2780 74.87 +2785 75.22 +2790 75.35 +2795 75.5 +2800 75.66 +2805 75.72 +2810 75.74 +2815 75.77 +2820 75.91 +2825 75.95 +2830 75.96 +2835 76.09 +2840 76.2 +2845 76.29 +2850 76.21 +2855 76.31 +2860 76.4 +2865 76.54 +2870 76.5 +2875 76.77 +2880 76.74 +2885 76.85 +2890 76.88 +2895 76.96 +2900 77 +2905 76.99 +2910 77.02 +2915 77.16 +2920 77.23 +2925 77.29 +2930 77.43 +2935 77.11 +2940 77.21 +2945 77.45 +2950 77.55 +2955 77.57 +2960 77.68 +2965 77.74 +2970 77.74 +2975 77.81 +2980 77.9 +2985 77.97 +2990 77.99 +2995 78.08 +3000 78.17 +3005 78.28 +3010 78.27 +3015 78.26 +3020 78.36 +3025 78.4 +3030 78.32 +3035 78.51 +3040 78.55 +3045 78.68 +3050 78.64 +3055 78.69 +3060 78.67 +3065 78.82 +3070 78.54 +3075 78.82 +3080 78.68 +3085 78.71 +3090 78.81 +3095 78.79 +3100 78.94 +3105 79.04 +3110 79.1 +3115 79.18 +3120 79.07 +3125 79.31 +3130 79.5 +3135 79.62 +3140 79.62 +3145 79.66 +3150 79.56 +3155 79.65 +3160 79.73 +3165 79.78 +3170 79.92 +3175 79.93 +3180 80.04 +3185 80.05 +3190 80.03 +3195 80.1 +3200 80.26 +3205 80.41 +3210 80.5 +3215 80.44 +3220 80.5 +3225 80.67 +3230 80.63 +3235 80.67 +3240 80.66 +3245 80.74 +3250 80.76 +3255 80.83 +3260 80.86 +3265 80.93 +3270 81.01 +3275 81 +3280 81.09 +3285 81.11 +3290 81.15 +3295 81.16 +3300 81.3 +3305 81.19 +3310 81.32 +3315 81.37 +3320 81.34 +3325 81.33 +3330 81.24 +3335 81.33 +3340 81.52 +3345 81.51 +3350 81.55 +3355 81.68 +3360 81.72 +3365 81.8 +3370 81.8 +3375 81.86 +3380 81.96 +3385 81.96 +3390 82.02 +3395 82.23 +3400 82.28 +3405 82.19 +3410 82.24 +3415 82.35 +3420 82.4 +3425 82.56 +3430 82.55 +3435 82.55 +3440 82.62 +3445 82.65 +3450 82.56 +3455 82.69 +3460 82.78 +3465 82.89 +3470 82.88 +3475 82.9 +3480 82.9 +3485 83.03 +3490 83.1 +3495 83 +3500 83.12 +3505 83.13 +3510 83.17 +3515 83.07 +3520 83.25 +3525 83.28 +3530 83.3 +3535 83.35 +3540 83.2 +3545 83.33 +3550 83.62 +3555 83.6 +3560 83.48 +3565 83.55 +3570 83.53 +3575 83.69 +3580 83.74 +3585 83.77 +3590 83.76 +3595 83.92 +3600 83.87 +3605 83.9 +3610 83.9 +3615 84.06 +3620 84.13 +3625 84.19 +3630 84.21 +3635 84.33 +3640 84.35 +3645 84.48 +3650 84.49 +3655 84.54 +3660 84.54 +3665 84.6 +3670 84.43 +3675 84.59 +3680 84.57 +3685 84.65 +3690 84.77 +3695 84.89 +3700 84.9 +3705 84.96 +3710 84.87 +3715 84.98 +3720 85.06 +3725 85.11 +3730 85.28 +3735 85.31 +3740 85.38 +3745 85.34 +3750 85.11 +3755 85.33 +3760 85.38 +3765 85.42 +3770 85.35 +3775 85.41 +3780 85.66 +3785 85.6 +3790 85.62 +3795 85.63 +3800 85.82 +3805 85.83 +3810 85.73 +3815 85.81 +3820 85.92 +3825 85.88 +3830 85.95 +3835 85.93 +3840 85.94 +3845 86.02 +3850 86.11 +3855 86.12 +3860 86.13 +3865 86.16 +3870 86.2 +3875 86.17 +3880 86.4 +3885 86.45 +3890 86.42 +3895 86.43 +3900 86.62 +3905 86.63 +3910 86.7 +3915 86.66 +3920 86.89 +3925 86.86 +3930 86.92 +3935 86.92 +3940 86.92 +3945 87.07 +3950 87.04 +3955 87.04 +3960 87.02 +3965 86.89 +3970 87 +3975 87.09 +3980 87.25 +3985 87.29 +3990 87.29 +3995 87.35 +4000 87.44 +4005 87.46 +4010 87.53 +4015 87.56 +4020 87.65 +4025 87.7 +4030 87.82 +4035 87.94 +4040 87.88 +4045 87.95 +4050 87.95 +4055 88 +4060 88.07 +4065 88.02 +4070 88.09 +4075 88.14 +4080 88.13 +4085 88.23 +4090 88.34 +4095 88.25 +4100 88.31 +4105 88.38 +4110 88.26 +4115 88.4 +4120 88.46 +4125 88.46 +4130 88.51 +4135 88.59 +4140 88.67 +4145 88.69 +4150 88.65 +4155 88.62 +4160 88.63 +4165 88.76 +4170 88.76 +4175 88.85 +4180 89.02 +4185 89.06 +4190 89.14 +4195 88.99 +4200 89.15 +4205 89.06 +4210 89.22 +4215 89.27 +4220 89.07 +4225 89.14 +4230 89.23 +4235 89.34 +4240 89.27 +4245 89.43 +4250 89.49 +4255 89.62 +4260 89.71 +4265 89.59 +4270 89.56 +4275 89.69 +4280 89.61 +4285 89.72 +4290 89.63 +4295 89.76 +4300 89.73 +4305 89.82 +4310 89.87 +4315 89.96 +4320 89.93 +4325 90.17 +4330 90.24 +4335 90.22 +4340 90.39 +4345 90.44 +4350 90.46 +4355 90.6 +4360 90.63 +4365 90.72 +4370 90.77 +4375 90.76 +4380 90.81 +4385 90.94 +4390 91.01 +4395 90.86 +4400 90.82 +4405 90.85 +4410 90.98 +4415 91.12 +4420 91.15 +4425 91.22 +4430 91.27 +4435 91.36 +4440 91.43 +4445 91.45 +4450 91.55 +4455 91.56 +4460 91.6 +4465 91.65 +4470 91.71 +4475 91.76 +4480 91.79 +4485 91.89 +4490 91.92 +4495 92.05 +4500 91.97 +4505 91.91 +4510 92.01 +4515 92.06 +4520 92.18 +4525 92.22 +4530 92.23 +4535 92.26 +4540 92.31 +4545 92.41 +4550 92.44 +4555 92.42 +4560 92.27 +4565 92.34 +4570 92.38 +4575 92.54 +4580 92.63 +4585 92.66 +4590 92.71 +4595 92.82 +4600 92.84 +4605 93 +4610 92.93 +4615 93.07 +4620 93.08 +4625 93.06 +4630 92.96 +4635 93.17 +4640 93.23 +4645 93.14 +4650 93.12 +4655 92.89 +4660 93.11 +4665 93.33 +4670 93.32 +4675 93.38 +4680 93.34 +4685 93.39 +4690 93.5 +4695 93.55 +4700 93.59 +4705 93.55 +4710 93.47 +4715 93.44 +4720 93.61 +4725 93.78 +4730 93.76 +4735 93.68 +4740 93.75 +4745 93.82 +4750 93.72 +4755 93.84 +4760 93.95 +4765 94.02 +4770 94.05 +4775 94.02 +4780 94.18 +4785 94.12 +4790 94.14 +4795 94.2 +4800 94.16 +4805 94.07 +4810 94.13 +4815 94.26 +4820 94.3 +4825 94.33 +4830 94.39 +4835 94.27 +4840 94.3 +4845 94.15 +4850 94.23 +4855 94.39 +4860 94.35 +4865 94.42 +4870 94.56 +4875 94.63 +4880 94.75 +4885 94.81 +4890 94.8 +4895 94.84 +4900 94.87 +4905 94.87 +4910 94.98 +4915 95.03 +4920 94.99 +4925 95.09 +4930 95.11 +4935 95.12 +4940 95.17 +4945 95.28 +4950 95.35 +4955 95.27 +4960 95.36 +4965 95.3 +4970 95.23 +4975 95.07 +4980 95.11 +4985 95.2 +4990 95.2 +4995 95.29 +5000 95.48 +5005 95.57 +5010 95.67 +5015 95.73 +5020 95.69 +5025 95.86 +5030 95.94 +5035 95.92 +5040 95.92 +5045 96.04 +5050 96.1 +5055 96.24 +5060 96.27 +5065 96.27 +5070 96.27 +5075 96.31 +5080 96.54 +5085 96.56 +5090 96.53 +5095 96.5 +5100 96.29 +5105 96.41 +5110 96.62 +5115 96.65 +5120 96.69 +5125 96.8 +5130 96.85 +5135 96.93 +5140 96.94 +5145 97 +5150 97.13 +5155 97.23 +5160 97.32 +5165 97.27 +5170 97.25 +5175 97.3 +5180 97.37 +5185 97.36 +5190 97.51 +5195 97.53 +5200 97.51 +5205 97.56 +5210 97.63 +5215 97.62 +5220 97.72 +5225 97.72 +5230 97.8 +5235 97.86 +5240 97.83 +5245 97.79 +5250 97.76 +5255 97.78 +5260 97.89 +5265 97.88 +5270 97.91 +5275 97.99 +5280 97.93 +5285 97.99 +5290 98.06 +5295 98.12 +5300 97.98 +5305 98.05 +5310 98.22 +5315 98.23 +5320 98.25 +5325 98.25 +5330 98.32 +5335 98.18 +5340 98.17 +5345 98.26 +5350 98.42 +5355 98.39 +5360 98.5 +5365 98.49 +5370 98.49 +5375 98.43 +5380 98.5 +5385 98.49 +5390 98.58 +5395 98.58 +5400 98.68 +5405 98.71 +5410 98.79 +5415 98.89 +5420 98.86 +5425 98.85 +5430 98.86 +5435 98.98 +5440 98.99 +5445 98.99 +5450 99.06 +5455 99.12 +5460 99.15 +5465 99.22 +5470 99.26 +5475 99.26 +5480 99.36 +5485 99.31 +5490 99.34 +5495 99.29 +5500 99.33 +5505 99.36 +5510 99.42 +5515 99.38 +5520 99.38 +5525 99.48 +5530 99.57 +5535 99.61 +5540 99.64 +5545 99.71 +5550 99.8 +5555 99.8 +5560 99.88 +5565 99.91 +5570 99.89 +5575 99.96 +5580 100.02 +5585 100.06 +5590 100.1 +5595 100.12 +5600 99.94 +5605 99.81 +5610 99.88 +5615 99.95 +5620 100 +5625 100.06 +5630 100.06 +5635 100.09 +5640 100.09 +5645 100.13 +5650 100.13 +5655 100.27 +5660 100.27 +5665 100.28 +5670 100.33 +5675 100.44 +5680 100.43 +5685 100.23 +5690 100.29 +5695 100.18 +5700 100.33 +5705 100.48 +5710 100.54 +5715 100.53 +5720 100.61 +5725 100.62 +5730 100.63 +5735 100.73 +5740 100.69 +5745 100.76 +5750 100.81 +5755 100.73 +5760 100.86 +5765 100.95 +5770 100.99 +5775 101.02 +5780 101.04 +5785 100.99 +5790 101.12 +5795 101.14 +5800 101.21 +5805 101.2 +5810 101.17 +5815 101.27 +5820 101.28 +5825 101.35 +5830 101.33 +5835 101.45 +5840 101.53 +5845 101.58 +5850 101.57 +5855 101.64 +5860 101.66 +5865 101.68 +5870 101.76 +5875 101.78 +5880 101.82 +5885 101.81 +5890 101.83 +5895 101.81 +5900 101.84 +5905 101.86 +5910 102.02 +5915 102.03 +5920 102.16 +5925 102.22 +5930 102.07 +5935 102.22 +5940 101.93 +5945 101.93 +5950 101.86 +5955 102.03 +5960 102.05 +5965 102.07 +5970 101.91 +5975 101.79 +5980 102.04 +5985 102.29 +5990 102.38 +5995 102.34 +6000 102.41 +6005 102.47 +6010 102.54 +6015 102.62 +6020 102.78 +6025 102.81 +6030 102.79 +6035 102.83 +6040 102.9 +6045 102.94 +6050 103.1 +6055 103.14 +6060 103.09 +6065 103.15 +6070 103.26 +6075 103.29 +6080 103.36 +6085 103.27 +6090 103.19 +6095 103.28 +6100 103.3 +6105 103.43 +6110 103.44 +6115 103.48 +6120 103.51 +6125 103.72 +6130 103.8 +6135 103.7 +6140 103.79 +6145 103.84 +6150 103.93 +6155 104.14 +6160 104.1 +6165 103.94 +6170 103.92 +6175 104.01 +6180 104.21 +6185 104.14 +6190 104.05 +6195 104.03 +6200 104.1 +6205 104.24 +6210 104.2 +6215 104.16 +6220 104.16 +6225 104.24 +6230 104.32 +6235 104.36 +6240 104.31 +6245 104.37 +6250 104.26 +6255 104.29 +6260 104.47 +6265 104.46 +6270 104.48 +6275 104.32 +6280 104.32 +6285 104.31 +6290 104.07 +6295 104.33 +6300 104.39 +6305 104.33 +6310 104.63 +6315 104.51 +6320 104.63 +6325 104.6 +6330 104.59 +6335 104.65 +6340 104.65 +6345 104.74 +6350 104.77 +6355 104.82 +6360 104.96 +6365 104.99 +6370 105.17 +6375 105.14 +6380 105.1 +6385 105.2 +6390 105.29 +6395 105.31 +6400 105.33 +6405 105.45 +6410 105.49 +6415 105.45 +6420 105.33 +6425 105.55 +6430 105.45 +6435 105.48 +6440 105.49 +6445 105.31 +6450 105.38 +6455 105.37 +6460 105.18 +6465 105.12 +6470 105.02 +6475 104.94 +6480 104.92 +6485 104.94 +6490 104.94 +6495 104.85 +6500 105 +6505 105.03 +6510 105.09 +6515 105.19 +6520 105.25 +6525 105.07 +6530 105.25 +6535 105.29 +6540 105.33 +6545 105.32 +6550 105.36 +6555 105.28 +6560 105.37 +6565 105.43 +6570 105.5 +6575 105.47 +6580 105.43 +6585 105.47 +6590 105.45 +6595 105.47 +6600 105.52 +6605 105.69 +6610 105.76 +6615 105.59 +6620 105.74 +6625 105.72 +6630 105.72 +6635 105.63 +6640 105.75 +6645 105.75 +6650 105.77 +6655 105.85 +6660 106 +6665 105.81 +6670 105.89 +6675 105.83 +6680 105.96 +6685 105.97 +6690 105.93 +6695 105.93 +6700 106.43 +6705 105.96 +6710 105.92 +6715 106.41 +6720 106.27 +6725 106.34 +6730 106.34 +6735 106.36 +6740 106.34 +6745 106.37 +6750 106.65 +6755 106.61 +6760 106.59 +6765 106.27 +6770 106.55 +6775 106.53 +6780 106.93 +6785 106.98 +6790 106.55 +6795 106.58 +6800 106.47 +6805 106.62 +6810 106.66 +6815 106.76 +6820 106.71 +6825 106.81 +6830 106.77 +6835 106.81 +6840 106.8 +6845 106.95 +6850 107.02 +6855 107.08 +6860 107.36 +6865 107.41 +6870 107.53 +6875 107.49 +6880 107.6 +6885 107.66 +6890 107.71 +6895 107.76 +6900 107.88 +6905 107.8 +6910 107.62 +6915 107.75 +6920 107.72 +6925 107.55 +6930 107.59 +6935 107.75 +6940 107.76 +6945 107.75 +6950 107.75 +6955 107.79 +6960 108.11 +6965 108.03 +6970 108.02 +6975 108.09 +6980 108 +6985 108.11 +6990 108.15 +6995 108.29 +7000 108.12 +7005 108.28 +7010 108.27 +7015 108.16 +7020 108.27 +7025 108.19 +7030 108.23 +7035 108.17 +7040 108.29 +7045 108.23 +7050 108.26 +7055 108.2 +7060 108.19 +7065 108.48 +7070 108.57 +7075 108.61 +7080 108.43 +7085 108.33 +7090 108.3 +7095 108.38 +7100 108.25 +7105 108.36 +7110 108.47 +7115 108.74 +7120 108.71 +7125 108.83 +7130 108.94 +7135 109.05 +7140 109.12 +7145 109.29 +7150 109.4 +7155 109.48 +7160 109.63 +7165 109.58 +7170 109.66 +7175 109.57 +7180 109.31 +7185 109.47 +7190 109.42 +7195 109.46 +7200 109.52 +7205 109.46 +7210 109.64 +7215 109.81 +7220 109.79 +7225 109.87 +7230 109.81 +7235 109.92 +7240 109.86 +7245 109.97 +7250 109.91 +7255 109.99 +7260 110.07 +7265 110.14 +7270 110 +7275 110.24 +7280 110.25 +7285 110.24 +7290 110.35 +7295 110.32 +7300 110.28 +7305 110.2 +7310 110.26 +7315 110.34 +7320 110.51 +7325 110.43 +7330 110.49 +7335 110.51 +7340 110.45 +7345 110.62 +7350 110.63 +7355 110.58 +7360 110.47 +7365 110.45 +7370 110.55 +7375 110.53 +7380 110.53 +7385 110.43 +7390 110.47 +7395 110.56 +7400 110.74 +7405 110.69 +7410 110.73 +7415 110.74 +7420 110.5 +7425 110.29 +7430 110.37 +7435 110.42 +7440 110.51 +7445 110.58 +7450 110.7 +7455 110.69 +7460 110.71 +7465 110.6 +7470 110.56 +7475 110.75 +7480 110.75 +7485 110.72 +7490 110.76 +7495 111.07 +7500 111.12 +7505 111.2 +7510 111.08 +7515 111.07 +7520 111.14 +7525 111.27 +7530 111.37 +7535 111.48 +7540 111.59 +7545 111.62 +7550 111.71 +7555 111.75 +7560 111.8 +7565 111.92 +7570 111.89 +7575 111.83 +7580 111.64 +7585 111.63 +7590 111.56 +7595 111.49 +7600 111.5 +7605 111.49 +7610 111.4 +7615 111.4 +7620 111.51 +7625 111.37 +7630 111.53 +7635 111.5 +7640 111.54 +7645 111.74 +7650 111.66 +7655 111.69 +7660 111.65 +7665 111.63 +7670 111.74 +7675 111.94 +7680 111.87 +7685 111.74 +7690 111.81 +7695 111.79 +7700 111.88 +7705 111.66 +7710 111.67 +7715 111.7 +7720 111.58 +7725 111.87 +7730 111.84 +7735 111.95 +7740 111.8 +7745 111.69 +7750 111.73 +7755 111.82 +7760 111.92 +7765 111.87 +7770 112.11 +7775 112.26 +7780 112.31 +7785 112.42 +7790 112.51 +7795 112.58 +7800 112.64 +7805 112.71 +7810 112.73 +7815 112.73 +7820 112.77 +7825 112.83 +7830 112.8 +7835 112.72 +7840 112.82 +7845 112.86 +7850 112.92 +7855 112.97 +7860 113.04 +7865 113.03 +7870 113.03 +7875 113.05 +7880 113.17 +7885 113.17 +7890 113.17 +7895 113.17 +7900 113.18 +7905 113.19 +7910 113.21 +7915 113.04 +7920 113 +7925 113.2 +7930 113.05 +7935 112.91 +7940 113.3 +7945 113.3 +7950 113.38 +7955 113.41 +7960 113.54 +7965 113.49 +7970 113.65 +7975 113.63 +7980 113.57 +7985 113.69 +7990 113.72 +7995 114.06 +8000 113.96 +8005 113.97 +8010 113.95 +8015 114.03 +8020 113.83 +8025 113.93 +8030 114.05 +8035 114.09 +8040 114.07 +8045 113.71 +8050 113.72 +8055 113.94 +8060 114.03 +8065 114.06 +8070 114.05 +8075 114.07 +8080 113.8 +8085 113.94 +8090 114.02 +8095 114.22 +8100 114.24 +8105 114.28 +8110 114.29 +8115 114.28 +8120 114.3 +8125 114.39 +8130 114.47 +8135 114.58 +8140 114.51 +8145 114.49 +8150 114.37 +8155 114.45 +8160 114.37 +8165 114.38 +8170 114.42 +8175 114.48 +8180 114.49 +8185 114.53 +8190 114.48 +8195 114.56 +8200 114.63 +8205 114.61 +8210 114.48 +8215 114.58 +8220 114.56 +8225 114.55 +8230 114.68 +8235 114.68 +8240 114.62 +8245 114.65 +8250 114.65 +8255 114.76 +8260 114.84 +8265 114.81 +8270 114.66 +8275 114.46 +8280 114.63 +8285 114.86 +8290 114.91 +8295 114.89 +8300 114.76 +8305 115 +8310 114.98 +8315 115.08 +8320 115.19 +8325 115.17 +8330 115.06 +8335 115.14