ogrigt Function

private function ogrigt(me, Actinp) result(Actout)

RIGHT-MULTIPLIES VECTOR LOWER TRIANGULAR MATRIX OBTAINED BY REDUCTION AND SUBSEQUENT INVERSION OF DERIVATIVES OF ACTIVE CONSTRAINTS

2008/01/16 | J. SCHOENMAEKERS | NEW

Type Bound

optgra

Arguments

Type IntentOptional Attributes Name
class(optgra), intent(inout) :: me
real(kind=wp), intent(in) :: Actinp(me%Numcon)

VECTOR INITAL

Return Value real(kind=wp), (me%Numcon)

VECTOR FINAL


Called by

proc~~ogrigt~~CalledByGraph proc~ogrigt optgra%ogrigt proc~ogcorr optgra%ogcorr proc~ogcorr->proc~ogrigt proc~ogopti optgra%ogopti proc~ogopti->proc~ogrigt proc~ogsens optgra%ogsens proc~ogsens->proc~ogrigt proc~ogexec optgra%ogexec proc~ogexec->proc~ogcorr proc~ogexec->proc~ogopti

Source Code

   function ogrigt(me,Actinp) result(Actout)

      !! RIGHT-MULTIPLIES VECTOR LOWER TRIANGULAR MATRIX OBTAINED BY REDUCTION
      !! AND SUBSEQUENT INVERSION OF DERIVATIVES OF ACTIVE CONSTRAINTS
      !!
      !! 2008/01/16 | J. SCHOENMAEKERS | NEW

      class(optgra),intent(inout) :: me
      real(wp),intent(in) :: Actinp(me%Numcon) !! VECTOR INITAL
      real(wp) :: Actout(me%Numcon) !! VECTOR FINAL

      integer(ip) :: row , col , act
      real(wp) :: val

      do col = me%Numact , 1 , -1
         val = Actinp(col)
         do act = me%Numact , col + 1 , -1
            row = me%Actcon(act)
            val = val - me%Conred(row,col)*Actout(act)
         end do
         row = me%Actcon(col)
         Actout(col) = val/me%Conred(row,col)
      end do

   end function ogrigt