residual_box Subroutine

private subroutine residual_box(mg, id, nc)

Arguments

Type IntentOptional Attributes Name
type(mg_t), intent(inout) :: mg
integer, intent(in) :: id
integer, intent(in) :: nc

Called by

proc~~residual_box~3~~CalledByGraph proc~residual_box~3 residual_box proc~max_residual_lvl~3 max_residual_lvl proc~max_residual_lvl~3->proc~residual_box~3 proc~update_coarse~3 update_coarse proc~update_coarse~3->proc~residual_box~3 proc~mg_fas_fmg~3 mg_fas_fmg proc~mg_fas_fmg~3->proc~update_coarse~3 proc~mg_fas_vcycle~3 mg_fas_vcycle proc~mg_fas_fmg~3->proc~mg_fas_vcycle~3 proc~mg_fas_vcycle~3->proc~max_residual_lvl~3 proc~mg_fas_vcycle~3->proc~update_coarse~3 proc~diffusion_solve_acoeff~3 diffusion_solve_acoeff proc~diffusion_solve_acoeff~3->proc~mg_fas_fmg~3 proc~diffusion_solve_acoeff~3->proc~mg_fas_vcycle~3 proc~diffusion_solve_vcoeff~3 diffusion_solve_vcoeff proc~diffusion_solve_vcoeff~3->proc~mg_fas_fmg~3 proc~diffusion_solve_vcoeff~3->proc~mg_fas_vcycle~3 proc~diffusion_solve~3 diffusion_solve proc~diffusion_solve~3->proc~mg_fas_fmg~3 proc~diffusion_solve~3->proc~mg_fas_vcycle~3

Source Code

  subroutine residual_box(mg, id, nc)
    type(mg_t), intent(inout) :: mg
    integer, intent(in)       :: id
    integer, intent(in)       :: nc

    call mg%box_op(mg, id, nc, mg_ires)

    mg%boxes(id)%cc(1:nc, 1:nc, 1:nc, mg_ires) = mg%boxes(id)%cc(1:nc, 1:nc,&
        1:nc, mg_irhs) - mg%boxes(id)%cc(1:nc, 1:nc, 1:nc, mg_ires)
  end subroutine residual_box