Eikonal solver in distance
This commit is contained in:
parent
d89dcf2648
commit
7cdfd4006a
@ -272,24 +272,24 @@ double Eikonal(DoubleArray &Distance, char *ID, Domain &Dm, int timesteps){
|
|||||||
// Compute upwind derivatives for Godunov Hamiltonian
|
// Compute upwind derivatives for Godunov Hamiltonian
|
||||||
if (sign < 0.0){
|
if (sign < 0.0){
|
||||||
if (Dxp + Dxm > 0.f) Dx = Dxp*Dxp;
|
if (Dxp + Dxm > 0.f) Dx = Dxp*Dxp;
|
||||||
elseDx = Dxm*Dxm;
|
else Dx = Dxm*Dxm;
|
||||||
|
|
||||||
if (Dyp + Dym > 0.f) Dy = Dyp*Dyp;
|
if (Dyp + Dym > 0.f) Dy = Dyp*Dyp;
|
||||||
elseDy = Dym*Dym;
|
else Dy = Dym*Dym;
|
||||||
|
|
||||||
if (Dzp + Dzm > 0.f) Dz = Dzp*Dzp;
|
if (Dzp + Dzm > 0.f) Dz = Dzp*Dzp;
|
||||||
elseDz = Dzm*Dzm;
|
else Dz = Dzm*Dzm;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
|
||||||
if (Dxp + Dxm < 0.f) Dx = Dxp*Dxp;
|
if (Dxp + Dxm < 0.f) Dx = Dxp*Dxp;
|
||||||
elseDx = Dxm*Dxm;
|
else Dx = Dxm*Dxm;
|
||||||
|
|
||||||
if (Dyp + Dym < 0.f) Dy = Dyp*Dyp;
|
if (Dyp + Dym < 0.f) Dy = Dyp*Dyp;
|
||||||
elseDy = Dym*Dym;
|
else Dy = Dym*Dym;
|
||||||
|
|
||||||
if (Dzp + Dzm < 0.f) Dz = Dzp*Dzp;
|
if (Dzp + Dzm < 0.f) Dz = Dzp*Dzp;
|
||||||
elseDz = Dzm*Dzm;
|
else Dz = Dzm*Dzm;
|
||||||
}
|
}
|
||||||
|
|
||||||
//Dx = max(Dxp*Dxp,Dxm*Dxm);
|
//Dx = max(Dxp*Dxp,Dxm*Dxm);
|
||||||
|
Loading…
Reference in New Issue
Block a user