anchor.diff:          enddo
           deallocate(Btmp)
         else if (MPC_METHOD == 3) then  ! elimination
  -        !write(0,*) "DEBUG: MPC: solve done"
           call hecmw_tback_x_33(hecMESH, hecTKT%X, time_dumm)
           do i=1,hecMAT%NP * hecMAT%NDOF
             hecMAT%X(i)=hecTKT%X(i)
           enddo
  -        !write(0,*) "DEBUG: MPC: recover solution done"
           call hecmw_mat_finalize(hecTKT)
           deallocate(hecTKT)
         endif
  
positive.code:         call hecmw_trans_b_33(hecMESH, hecMAT, Btmp, hecMAT%B, time_dumm)
          hecTKT => hecMAT
        else if (MPC_METHOD == 3) then  ! elimination
          write(0,*) "DEBUG: MPC Method: Elimination"
          allocate(hecTKT)
          call hecmw_mat_init(hecTKT)
          !write(0,*) "DEBUG: MPC: eliminating slave DOF"
          call hecmw_trimatmul_TtKT_mpc(hecMESH, hecMAT, hecTKT)
          !write(0,*) "DEBUG: MPC: trimatmul done"
          call hecmw_trans_b_33(hecMESH, hecMAT, hecMAT%B, hecTKT%B, time_dumm)
          !write(0,*) "DEBUG: MPC: make new RHS done"
        endif
      else
        hecTKT => hecMAT
  
negative.code:       write (*,'(a, 1pe16.6 )') '    solver/precond   : ', time_precond
        if (ITER > 0) &
        write (*,'(a, 1pe16.6 )') '    solver/1 iter    : ', TIME_sol / ITER
        if (totalmpc > 0) then
          write (*,'(a, 1pe16.6 )') '    MPC pre          : ', TIME_mpc_pre
          write (*,'(a, 1pe16.6 )') '    MPC post         : ', TIME_mpc_post
        endif
        write (*,'(a, 1pe16.6/)') '    work ratio (%)   : ', TR
      endif
  
  