Commit 717a9e53 authored by Olivier Bonnefon's avatar Olivier Bonnefon
Browse files

intermediate version of aedes simulator with data assimlation until data 2019

parent 5cf08f3c
......@@ -9,6 +9,8 @@ include "defTigerVar.edp"
include "defSimuParamsGen.edp";
include "paramsTS.edp";
include "buildTobs.edp";
include "defDataAssimilation.edp";
int numRun=0;
int NnumRun=10;
string SAVEDIR="/home/olivierb/aedes/AEDESINTER_AUTOROUTES_ADAPTIV/SAVE/WORK_VERSION/";
......@@ -148,8 +150,8 @@ func real J(real[int] & u)
p=randreal1();
int rg=p/0.2+1;
CURYEARRAND=2011+rg;
if (CURYEARRAND>2016)
CURYEARRAND=2016;
if (CURYEARRAND>2019)
CURYEARRAND=2019;
cout<<"CURYEAR "<<CURYEAR<<" use data "<<CURYEARRAND<<endl;
}
ofstream infoFile("infosimu.txt",append);
......
//modifier l'etat avec les donnees de l'annee CURYEAR
include "updateVdepFromTobs.edp";
vall=0;
vabuf[]=IVbisDep0*vdep0[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep1*vdep1[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep2*vdep2[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep3*vdep3[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep4*vdep4[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep5*vdep5[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep6*vdep6[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep7*vdep7[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep8*vdep8[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep9*vdep9[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep10*vdep10[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep11*vdep11[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep12*vdep12[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep13*vdep13[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep14*vdep14[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep15*vdep15[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep16*vdep16[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep17*vdep17[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep18*vdep18[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep19*vdep19[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep20*vdep20[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep21*vdep21[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep22*vdep22[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep23*vdep23[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep24*vdep24[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep25*vdep25[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep26*vdep26[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep27*vdep27[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep28*vdep28[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep29*vdep29[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep30*vdep30[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep31*vdep31[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep32*vdep32[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep33*vdep33[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep34*vdep34[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep35*vdep35[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep36*vdep36[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep37*vdep37[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep38*vdep38[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep39*vdep39[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep40*vdep40[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep41*vdep41[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep42*vdep42[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep43*vdep43[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep44*vdep44[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep45*vdep45[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep46*vdep46[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep47*vdep47[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep48*vdep48[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep49*vdep49[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep50*vdep50[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep51*vdep51[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep52*vdep52[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep53*vdep53[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep54*vdep54[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep55*vdep55[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep56*vdep56[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep57*vdep57[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep58*vdep58[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep59*vdep59[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep60*vdep60[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep61*vdep61[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep62*vdep62[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep63*vdep63[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep64*vdep64[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep65*vdep65[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep66*vdep66[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep67*vdep67[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep68*vdep68[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep69*vdep69[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep70*vdep70[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep71*vdep71[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep72*vdep72[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep73*vdep73[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep74*vdep74[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep75*vdep75[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep76*vdep76[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep77*vdep77[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep78*vdep78[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep79*vdep79[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep80*vdep80[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep81*vdep81[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep82*vdep82[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep83*vdep83[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep84*vdep84[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep85*vdep85[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep86*vdep86[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep87*vdep87[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep88*vdep88[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep89*vdep89[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep90*vdep90[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep91*vdep91[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep92*vdep92[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep93*vdep93[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep94*vdep94[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep95*vdep95[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep96*vdep96[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep97*vdep97[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep98*vdep98[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep99*vdep99[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep100*vdep100[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep101*vdep101[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep102*vdep102[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep103*vdep103[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep104*vdep104[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep105*vdep105[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep106*vdep106[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep107*vdep107[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep108*vdep108[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep109*vdep109[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep110*vdep110[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep111*vdep111[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep112*vdep112[];
adddofs(vall,vabuf);
vabuf[]=IVbisDep113*vdep113[];
adddofs(vall,vabuf);
plot(vall,cmm="vall data assim",value=true,fill=true,wait=true);
Vh0 aedesAssim2d0;
Vh1 aedesAssim2d1;
Vh2 aedesAssim2d2;
Vh3 aedesAssim2d3;
Vh4 aedesAssim2d4;
Vh5 aedesAssim2d5;
Vh6 aedesAssim2d6;
Vh7 aedesAssim2d7;
Vh8 aedesAssim2d8;
Vh9 aedesAssim2d9;
Vh10 aedesAssim2d10;
Vh11 aedesAssim2d11;
Vh12 aedesAssim2d12;
Vh13 aedesAssim2d13;
Vh14 aedesAssim2d14;
plot(uk2d0,uk2d1,uk2d2,uk2d3,uk2d4,uk2d5,uk2d6,uk2d7,uk2d8,uk2d9,uk2d10,uk2d11,uk2d12,uk2d13,uk2d14,cmm="uk before data assim",value=true,fill=true,wait=true);
aedesAssim2d0[]=I0VA*vall[];
aedesAssim2d1[]=I1VA*vall[];
aedesAssim2d2[]=I2VA*vall[];
aedesAssim2d3[]=I3VA*vall[];
aedesAssim2d4[]=I4VA*vall[];
aedesAssim2d5[]=I5VA*vall[];
aedesAssim2d6[]=I6VA*vall[];
aedesAssim2d7[]=I7VA*vall[];
aedesAssim2d8[]=I8VA*vall[];
aedesAssim2d9[]=I9VA*vall[];
aedesAssim2d10[]=I10VA*vall[];
aedesAssim2d11[]=I11VA*vall[];
aedesAssim2d12[]=I12VA*vall[];
aedesAssim2d13[]=I13VA*vall[];
aedesAssim2d14[]=I14VA*vall[];
plot(aedesAssim2d0,aedesAssim2d1,aedesAssim2d2,aedesAssim2d3,aedesAssim2d4,aedesAssim2d5,aedesAssim2d6,aedesAssim2d7,aedesAssim2d8,aedesAssim2d9,aedesAssim2d10,aedesAssim2d11,aedesAssim2d12,aedesAssim2d13,aedesAssim2d14,cmm="assim data assim",value=true,fill=true,wait=true);
cout<<"thetaAssim "<<thetaAssim<<endl;
u2d0=thetaAssim*uk2d0+(1-thetaAssim)*aedesAssim2d0;
u2d1=thetaAssim*uk2d1+(1-thetaAssim)*aedesAssim2d1;
u2d2=thetaAssim*uk2d2+(1-thetaAssim)*aedesAssim2d2;
u2d3=thetaAssim*uk2d3+(1-thetaAssim)*aedesAssim2d3;
u2d4=thetaAssim*uk2d4+(1-thetaAssim)*aedesAssim2d4;
u2d5=thetaAssim*uk2d5+(1-thetaAssim)*aedesAssim2d5;
u2d6=thetaAssim*uk2d6+(1-thetaAssim)*aedesAssim2d6;
u2d7=thetaAssim*uk2d7+(1-thetaAssim)*aedesAssim2d7;
u2d8=thetaAssim*uk2d8+(1-thetaAssim)*aedesAssim2d8;
u2d9=thetaAssim*uk2d9+(1-thetaAssim)*aedesAssim2d9;
u2d10=thetaAssim*uk2d10+(1-thetaAssim)*aedesAssim2d10;
u2d11=thetaAssim*uk2d11+(1-thetaAssim)*aedesAssim2d11;
u2d12=thetaAssim*uk2d12+(1-thetaAssim)*aedesAssim2d12;
u2d13=thetaAssim*uk2d13+(1-thetaAssim)*aedesAssim2d13;
u2d14=thetaAssim*uk2d14+(1-thetaAssim)*aedesAssim2d14;
uk2d0=u2d0;
utm12d0=u2d0;
uk2d1=u2d1;
utm12d1=u2d1;
uk2d2=u2d2;
utm12d2=u2d2;
uk2d3=u2d3;
utm12d3=u2d3;
uk2d4=u2d4;
utm12d4=u2d4;
uk2d5=u2d5;
utm12d5=u2d5;
uk2d6=u2d6;
utm12d6=u2d6;
uk2d7=u2d7;
utm12d7=u2d7;
uk2d8=u2d8;
utm12d8=u2d8;
uk2d9=u2d9;
utm12d9=u2d9;
uk2d10=u2d10;
utm12d10=u2d10;
uk2d11=u2d11;
utm12d11=u2d11;
uk2d12=u2d12;
utm12d12=u2d12;
uk2d13=u2d13;
utm12d13=u2d13;
uk2d14=u2d14;
utm12d14=u2d14;
plot(u2d0,u2d1,u2d2,u2d3,u2d4,u2d5,u2d6,u2d7,u2d8,u2d9,u2d10,u2d11,u2d12,u2d13,u2d14,cmm="uk after data assim",value=true,fill=true,wait=true);
real thetaAssim=0.5;
//end of august
int assimNumDay=240;
include "defICNull.edp";
if (FIRSTYEAR==2011){
include "defICGen1SEPT2011.edp";
}else if (FIRSTYEAR==2017){
LoadVec(w0s2d0[],"../INIT_W0/w0s2d0_"+string(FIRSTYEAR-1));
LoadVec(w0s2d1[],"../INIT_W0/w0s2d1_"+string(FIRSTYEAR-1));
LoadVec(w0s2d2[],"../INIT_W0/w0s2d2_"+string(FIRSTYEAR-1));
LoadVec(w0s2d3[],"../INIT_W0/w0s2d3_"+string(FIRSTYEAR-1));
LoadVec(w0s2d4[],"../INIT_W0/w0s2d4_"+string(FIRSTYEAR-1));
LoadVec(w0s2d5[],"../INIT_W0/w0s2d5_"+string(FIRSTYEAR-1));
LoadVec(w0s2d6[],"../INIT_W0/w0s2d6_"+string(FIRSTYEAR-1));
LoadVec(w0s2d7[],"../INIT_W0/w0s2d7_"+string(FIRSTYEAR-1));
LoadVec(w0s2d8[],"../INIT_W0/w0s2d8_"+string(FIRSTYEAR-1));
LoadVec(w0s2d9[],"../INIT_W0/w0s2d9_"+string(FIRSTYEAR-1));
LoadVec(w0s2d10[],"../INIT_W0/w0s2d10_"+string(FIRSTYEAR-1));
LoadVec(w0s2d11[],"../INIT_W0/w0s2d11_"+string(FIRSTYEAR-1));
LoadVec(w0s2d12[],"../INIT_W0/w0s2d12_"+string(FIRSTYEAR-1));
LoadVec(w0s2d13[],"../INIT_W0/w0s2d13_"+string(FIRSTYEAR-1));
LoadVec(w0s2d14[],"../INIT_W0/w0s2d14_"+string(FIRSTYEAR-1));
if (FIRSTYEAR>2012){
LoadVec(w0s2d0[],"SAVE/w0s2d0_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d1[],"SAVE/w0s2d1_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d2[],"SAVE/w0s2d2_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d3[],"SAVE/w0s2d3_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d4[],"SAVE/w0s2d4_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d5[],"SAVE/w0s2d5_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d6[],"SAVE/w0s2d6_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d7[],"SAVE/w0s2d7_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d8[],"SAVE/w0s2d8_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d9[],"SAVE/w0s2d9_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d10[],"SAVE/w0s2d10_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d11[],"SAVE/w0s2d11_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d12[],"SAVE/w0s2d12_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d13[],"SAVE/w0s2d13_"+string(numRun)+"_"+string(FIRSTYEAR-1));
LoadVec(w0s2d14[],"SAVE/w0s2d14_"+string(numRun)+"_"+string(FIRSTYEAR-1));
w0stm12d0=w0s2d0;
w0stm12d1=w0s2d1;
......@@ -36,8 +34,8 @@ if (FIRSTYEAR==2011){
w0stm12d14=w0s2d14;
}else{
cout<<"First year "<<FIRSTYEAR<<" not available\n";
exit(0);
cout<<"First year "<<FIRSTYEAR<<" not available, initial is nulled\n";
}
plot(w0s2d0,w0s2d1,w0s2d2,w0s2d3,w0s2d4,w0s2d5,w0s2d6,w0s2d7,w0s2d8,w0s2d9,w0s2d10,w0s2d11,w0s2d12,w0s2d13,w0s2d14,cmm="w0 in defIC",value=true,fill=true,wait=true);
......@@ -10,7 +10,7 @@ int simuFailed=0;
int numStep=0;
//adaptive ts params
real minStep=dt;
int maxMult=8;
int maxMult=8;//8
real relError=0.05;
//NonLinear ts params
real criteron=5.000000e-01;
......
This diff is collapsed.
......@@ -2,8 +2,8 @@
plot(w1s2d0,w1s2d1,w1s2d2,w1s2d3,w1s2d4,w1s2d5,w1s2d6,w1s2d7,w1s2d8,w1s2d9,w1s2d10,w1s2d11,w1s2d12,w1s2d13,w1s2d14,cmm="w1s end",value=true,fill=true,wait=false);
int NEXTYEAR=CURYEAR+1;
if (NEXTYEAR > 2016)
NEXTYEAR=2012;
/*if (NEXTYEAR > 2019)
NEXTYEAR=2012;*/
LoadVec(january2d0[],DATASAFRAN+"JANUARY_AVERAGE/"+string(NEXTYEAR)+"/mesh"+"0");
LoadVec(january2d1[],DATASAFRAN+"JANUARY_AVERAGE/"+string(NEXTYEAR)+"/mesh"+"1");
......
int FIRSTYEAR=2017;
int FIRSTYEAR=2012;
//int LASTYEAR=2018;
int LASTYEAR=2023;
int CURYEAR=2017;
int LASTYEAR=2019;
int CURYEAR=2012;
int CURYEARRAND;
......
......@@ -3,7 +3,7 @@ if (numDay>364)
numDay=364;
int CURYEARSAV=CURYEAR;
if (CURYEAR>2016){
if (CURYEAR>2019){
CURYEAR=CURYEARRAND;
}
......@@ -49,7 +49,7 @@ if (numDay > 59){
ENDDIAPOS14=0;
}
if (numDay%10==0)
plot(ENDDIAPOS0,ENDDIAPOS1,ENDDIAPOS2,ENDDIAPOS3,ENDDIAPOS4,ENDDIAPOS5,ENDDIAPOS6,ENDDIAPOS7,ENDDIAPOS8,ENDDIAPOS9,ENDDIAPOS10,ENDDIAPOS11,ENDDIAPOS12,ENDDIAPOS13,ENDDIAPOS14,cmm="diapose end "+string(numDay),value=true,fill=true,wait=true);
plot(ENDDIAPOS0,ENDDIAPOS1,ENDDIAPOS2,ENDDIAPOS3,ENDDIAPOS4,ENDDIAPOS5,ENDDIAPOS6,ENDDIAPOS7,ENDDIAPOS8,ENDDIAPOS9,ENDDIAPOS10,ENDDIAPOS11,ENDDIAPOS12,ENDDIAPOS13,ENDDIAPOS14,cmm="diapose end "+string(numDay),value=true,fill=true,wait=false);
//update GP and GT
if (numDay<365/2){
GP0=1;
......
......@@ -9,8 +9,11 @@ int NewtonIt=0;
real dampNR=1.0;
int curDof=0;
simuFailed=0;
cout<<"timeSteppingOneStepGenAdap.. rep0"<<endl;
include "preparStep.edp";
cout<<"timeSteppingOneStepGenAdap.. rep1"<<endl;
include "buildRhsGen1d.edp";
cout<<"timeSteppingOneStepGenAdap.. rep2"<<endl;
while((residu>criteron || NewtonIt<minNewtonIt) && NewtonIt<maxNewtonIt){
include "setFuncFGenK.edp";
......@@ -35,7 +38,7 @@ else
if (sol[ii]<0)
sol[ii]=0;
include "solToDof.edp";
plot(uk2d0,uk2d1,uk2d2,uk2d3,uk2d4,uk2d5,uk2d6,uk2d7,uk2d8,uk2d9,uk2d10,uk2d11,uk2d12,uk2d13,uk2d14,cmm="uk k="+ string(NewtonIt)+"curT="+string(curT),value=true,fill=true,wait=true);
plot(uk2d0,uk2d1,uk2d2,uk2d3,uk2d4,uk2d5,uk2d6,uk2d7,uk2d8,uk2d9,uk2d10,uk2d11,uk2d12,uk2d13,uk2d14,cmm="uk k="+ string(NewtonIt)+"curT="+string(curT),value=true,fill=true,wait=false);
include "timeSteppingOneStepw01ODE.edp";
cout<<NewtonIt<<" Newton residu="<<residu<<endl;
if (isNaN(residu) || isInf(residu) || residu > maxResiduPossible)
......
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment