diff --git a/appl/conjugateheattransfer/iterative/main_freeflow.cc b/appl/conjugateheattransfer/iterative/main_freeflow.cc index eac59a82109317352d631f3fc52ed215e9895a81..95e94ce2d3988a0a4144ea43ca14eccc31f969ae 100644 --- a/appl/conjugateheattransfer/iterative/main_freeflow.cc +++ b/appl/conjugateheattransfer/iterative/main_freeflow.cc @@ -266,8 +266,6 @@ int main(int argc, char** argv) try //Checkpointing variable for preCICE auto sol_checkpoint = sol; - double fakeTime = 0.; - // time loop timeLoop->start(); //do @@ -289,11 +287,6 @@ int main(int argc, char** argv) try // solve the non-linear system with time step control nonLinearSolver.solve(sol, *timeLoop); - // make the new solution the old solution - //TODO DO WE HAVE TO MOVE THAT? - //solOld = sol; - freeFlowGridVariables->advanceTimeStep(); - // Write heatflux to wrapper setBoundaryHeatFluxes( *freeFlowProblem, *freeFlowGridVariables, sol ); //Tell wrapper that all values have been written @@ -308,16 +301,10 @@ int main(int argc, char** argv) try if ( couplingInterface.hasToReadIterationCheckpoint() ) { //Read checkpoint - //printCellCenterTemperatures( *freeFlowProblem, *freeFlowGridVariables, sol ); sol = sol_checkpoint; - //freeFlowGridVariables->advanceTimeStep(); freeFlowGridVariables->update(sol); - //printCellCenterTemperatures( *freeFlowProblem, *freeFlowGridVariables, sol ); - -// freeFlowVtkWriter.write(timeLoop->time() + fakeTime); -// fakeTime += 1.0; -// std::cout << "Press key to continue! " << std::endl; -// getchar(); + freeFlowGridVariables->advanceTimeStep(); + //freeFlowGridVariables->init(sol); couplingInterface.announceIterationCheckpointRead(); } else // coupling successful @@ -339,6 +326,7 @@ int main(int argc, char** argv) try //while (!timeLoop->finished() && couplingInterface.isCouplingOngoing()); timeLoop->finalize(freeFlowGridView.comm()); + couplingInterface.finalize(); //////////////////////////////////////////////////////////// // finalize, print dumux message to say goodbye @@ -351,8 +339,6 @@ int main(int argc, char** argv) try DumuxMessage::print(/*firstCall=*/false); } - couplingInterface.finalize(); - return 0; } // end main catch (Dumux::ParameterException &e) diff --git a/appl/conjugateheattransfer/iterative/main_solidenergy.cc b/appl/conjugateheattransfer/iterative/main_solidenergy.cc index 1f7b28ac890bec55d3c40272e2b7eaaa98a5574b..2c1752d64af671a58dd697c13fda898b9f31b01a 100644 --- a/appl/conjugateheattransfer/iterative/main_solidenergy.cc +++ b/appl/conjugateheattransfer/iterative/main_solidenergy.cc @@ -290,8 +290,9 @@ int main(int argc, char** argv) try { //Read checkpoint sol = sol_checkpoint; - //solidEnergyGridVariables->advanceTimeStep(); solidEnergyGridVariables->update(sol); + solidEnergyGridVariables->advanceTimeStep(); + //solidEnergyGridVariables->init(sol); couplingInterface.announceIterationCheckpointRead(); } else // coupling successful diff --git a/appl/conjugateheattransfer/iterative/precice-config-serial-implicit.xml b/appl/conjugateheattransfer/iterative/precice-config-serial-implicit.xml index b8cdbf9405bef835d7f5807f4f23863852339f50..c1b12d80c7725191ad9d3f051f087cf1f0c50d98 100644 --- a/appl/conjugateheattransfer/iterative/precice-config-serial-implicit.xml +++ b/appl/conjugateheattransfer/iterative/precice-config-serial-implicit.xml @@ -58,7 +58,7 @@ <coupling-scheme:serial-implicit> <max-time value="100"/> <timestep-length value="1" /> - <max-iterations value="120"/> + <max-iterations value="100"/> <participants first="FreeFlow" second="SolidEnergy"/> @@ -74,21 +74,21 @@ <relative-convergence-measure limit="1.0e-6" data="Temperature" mesh="FreeFlowMesh"/> --> - <relative-convergence-measure limit="1.0e-5" data="Heat-Flux" mesh="SolidEnergyMesh"/> - <relative-convergence-measure limit="1.0e-5" data="Temperature" mesh="SolidEnergyMesh"/> + <relative-convergence-measure limit="1.0e-8" data="Heat-Flux" mesh="SolidEnergyMesh"/> + <relative-convergence-measure limit="1.0e-8" data="Temperature" mesh="SolidEnergyMesh"/> <!-- <relative-convergence-measure limit="1.0e-2" data="Temperature" mesh="FreeFlowMesh"/> --> - <extrapolation-order value="0"/> + <extrapolation-order value="2"/> <post-processing:IQN-ILS> <data mesh="SolidEnergyMesh" name="Temperature" /> <initial-relaxation value="0.1" /> <max-used-iterations value="9" /> - <timesteps-reused value="20" /> + <timesteps-reused value="10" /> <filter type="QR2" limit="1e-3" /> </post-processing:IQN-ILS>