Reinitialization method using the classic HJ algorithm.
|
subroutine | compute_levelset_reinitialization_hj (my_levelset) |
|
subroutine | levelset_reinitialize_hj (my_levelset, band) |
|
subroutine | integrate_filtered_hj_equation (phi_0, phi_n, band, filter, dtau, my_levelset) |
| Integrate with Euler time scheme the HJ equation. More...
|
|
subroutine | integrate_filtered_hj_equation_rk2 (phi_0, phi_n, band, filter, dtau, my_levelset) |
| Integrate with RK2 time scheme the HJ equation. More...
|
|
subroutine | integrate_filtered_hj_equation_rk2_tvd (phi_0, phi_n, band, filter, dtau, my_levelset) |
| Integrate with TVD RK2 time scheme the HJ equation. More...
|
|
◆ integrate_filtered_hj_equation()
subroutine mod_lsm_reinitialization_hj::integrate_filtered_hj_equation |
( |
double precision, dimension(:,:,:), intent(in) |
phi_0, |
|
|
double precision, dimension(:,:,:), intent(in) |
phi_n, |
|
|
integer, dimension(:,:,:), intent(in) |
band, |
|
|
double precision, dimension(:,:,:), intent(in) |
filter, |
|
|
double precision, intent(in) |
dtau, |
|
|
class(t_levelset), intent(inout) |
my_levelset |
|
) |
| |
- Note
- Before we were using WENO5 when the band==1 and WENO3 in the band==2 (nothing elsewhere) but this seems to be very unstable. Now we are only using WENO5 in the whole band.
◆ integrate_filtered_hj_equation_rk2()
subroutine mod_lsm_reinitialization_hj::integrate_filtered_hj_equation_rk2 |
( |
double precision, dimension(:,:,:), intent(in) |
phi_0, |
|
|
double precision, dimension(:,:,:), intent(in) |
phi_n, |
|
|
integer, dimension(:,:,:), intent(in) |
band, |
|
|
double precision, dimension(:,:,:), intent(in) |
filter, |
|
|
double precision, intent(in) |
dtau, |
|
|
class(t_levelset), intent(inout) |
my_levelset |
|
) |
| |
- Note
- Before we were using WENO5 when the band==1 and WENO3 in the band==2 (nothing elsewhere) but this seems to be very unstable. Now we are only using WENO5 in the whole band.
◆ integrate_filtered_hj_equation_rk2_tvd()
subroutine mod_lsm_reinitialization_hj::integrate_filtered_hj_equation_rk2_tvd |
( |
double precision, dimension(:,:,:), intent(in) |
phi_0, |
|
|
double precision, dimension(:,:,:), intent(in) |
phi_n, |
|
|
integer, dimension(:,:,:), intent(in) |
band, |
|
|
double precision, dimension(:,:,:), intent(in) |
filter, |
|
|
double precision, intent(in) |
dtau, |
|
|
class(t_levelset), intent(inout) |
my_levelset |
|
) |
| |
- Note
- Before we were using WENO5 when the band==1 and WENO3 in the band==2 (nothing elsewhere) but this seems to be very unstable. Now we are only using WENO5 in the whole band.
◆ levelset_reinitialize_hj()
subroutine mod_lsm_reinitialization_hj::levelset_reinitialize_hj |
( |
class(t_levelset), intent(inout) |
my_levelset, |
|
|
integer, dimension(:,:,:), intent(in) |
band |
|
) |
| |
outside_band_mask: the mask