mxvinv Subroutine

public pure subroutine mxvinv(ix, i, job)

change of the integer vector element for the constraint addition.

Arguments

Type IntentOptional Attributes Name
integer, intent(inout) :: ix(*)

ix(n) integer vector.

integer, intent(in) :: i

index of the changed element.

integer, intent(in) :: job

change specification


Called by

proc~~mxvinv~~CalledByGraph proc~mxvinv mxvinv proc~dual_range_space_quad_prog psqp_class%dual_range_space_quad_prog proc~dual_range_space_quad_prog->proc~mxvinv proc~psqp psqp_class%psqp proc~psqp->proc~dual_range_space_quad_prog proc~psqpn psqp_class%psqpn proc~psqpn->proc~psqp

Source Code

      pure subroutine mxvinv(ix,i,job)

      integer,intent(in) :: i      !! index of the changed element.
      integer,intent(in) :: job    !! change specification
      integer,intent(inout) :: ix(*)  !! ix(n)  integer vector.

      if ( (ix(i)==3 .or. ix(i)==5) .and. job<0 ) ix(i) = ix(i) + 1
      if ( (ix(i)==4 .or. ix(i)==6) .and. job>0 ) ix(i) = ix(i) - 1
      ix(i) = -ix(i)

      end subroutine mxvinv