From 745db9f52a76f3b0a5bc07893351cd2c0283f4c1 Mon Sep 17 00:00:00 2001 From: Volker Springel <vspringel@mpa-garching.mpg.de> Date: Thu, 18 Mar 2021 12:09:43 +0100 Subject: [PATCH] fix for joint use of SECOND_ORDER_LPT_ICS and GENERATE_GAS_IN_ICS --- src/main/init.cc | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/main/init.cc b/src/main/init.cc index 198f9fe..0a026f6 100644 --- a/src/main/init.cc +++ b/src/main/init.cc @@ -129,7 +129,6 @@ void sim::init(int RestartSnapNum) Mem.myfree(tmp); - int count = 0; for(int i = 0; i < Sp.NumPart; i++) #ifdef SPLIT_PARTICLE_TYPE @@ -190,6 +189,11 @@ void sim::init(int RestartSnapNum) Sp.P[j].setMass(Sp.P[j].getMass() * fac); Sp.P[i].setMass(Sp.P[i].getMass() * (1 - fac)); +#ifdef SECOND_ORDER_LPT_ICS + Sp.P[j].OldAcc *= fac; + Sp.P[i].OldAcc *= (1 - fac); +#endif + Sp.P[j].setType(0); #if NSOFTCLASSES > 1 Sp.P[j].setSofteningClass(All.SofteningClassOfPartType[0]); @@ -477,7 +481,7 @@ void sim::init(int RestartSnapNum) */ #ifdef PRESSURE_ENTROPY_SPH #ifndef INITIAL_CONDITIONS_CONTAIN_ENTROPY - NgbTree.setup_entropy_to_invgamma(); + NgbTree.setup_entropy_to_invgamma(); #endif #endif @@ -485,15 +489,15 @@ void sim::init(int RestartSnapNum) for(int i = 0; i < Sp.NumGas; i++) { #ifndef INITIAL_CONDITIONS_CONTAIN_ENTROPY - - if(ThisTask == 0 && i == 0) - printf("INIT: Converting u -> entropy\n"); + + if(ThisTask == 0 && i == 0) + printf("INIT: Converting u -> entropy\n"); #if !defined(PRESSURE_ENTROPY_SPH) && !defined(ISOTHERM_EQS) - Sp.SphP[i].Entropy = GAMMA_MINUS1 * Sp.SphP[i].Entropy / pow(Sp.SphP[i].Density * All.cf_a3inv, GAMMA_MINUS1); + Sp.SphP[i].Entropy = GAMMA_MINUS1 * Sp.SphP[i].Entropy / pow(Sp.SphP[i].Density * All.cf_a3inv, GAMMA_MINUS1); #endif - Sp.SphP[i].EntropyPred = Sp.SphP[i].Entropy; - + Sp.SphP[i].EntropyPred = Sp.SphP[i].Entropy; + #endif /* The predicted entropy values have been already set for all SPH formulation */ /* so it should be ok computing pressure and csound now */ -- GitLab