anchor.diff:  !--------------------------------------------------------------------
      INTEGER(IntKi),INTENT(IN   ):: np
      INTEGER(IntKi),INTENT(IN   ):: ns
  -   REAL(ReKi),    INTENT(IN   ):: spts(:)
  -   REAL(ReKi),    INTENT(IN   ):: npts(:)
  -   REAL(ReKi),    INTENT(  OUT):: hhx(:,:)
  -   REAL(ReKi),    INTENT(  OUT):: hpx(:,:)
  +   REAL(BDKi),    INTENT(IN   ):: spts(:)
  +   REAL(BDKi),    INTENT(IN   ):: npts(:)
  +   REAL(BDKi),    INTENT(  OUT):: hhx(:,:)
  +   REAL(BDKi),    INTENT(  OUT):: hpx(:,:)
      INTEGER(IntKi),INTENT(  OUT):: ErrStat       ! Error status of the operation
      CHARACTER(*),  INTENT(  OUT):: ErrMsg        ! Error message if ErrStat /= ErrID_None
   
  -   REAL(ReKi)                  :: dPhis(np+1,ns)
  -   REAL(ReKi)                  :: Ps(np+1,ns)
  -   REAL(ReKi)                  :: dnum
  -   REAL(ReKi)                  :: den
  -   REAL(ReKi),        PARAMETER:: eps = 1.0D-08
  +   REAL(BDKi)                  :: dPhis(np+1,ns)
  +   REAL(BDKi)                  :: Ps(np+1,ns)
  +   REAL(BDKi)                  :: dnum
  +   REAL(BDKi)                  :: den
  +   REAL(BDKi),        PARAMETER:: eps = 1.0D-08
      INTEGER(IntKi)              :: l
      INTEGER(IntKi)              :: j
      INTEGER(IntKi)              :: i
  
positive.code: 
     ErrStat  = ErrID_None
     ErrMsg   = ""
     elf(:)   = 0.0D0
     elm(:,:) = 0.0D0
  
     fact = .FALSE.
  
  
negative.code: 
     ErrStat    = ErrID_None
     ErrMsg     = ""
     RHS(:)     = 0.0_BDKi
  
     dof_elem = dof_node * node_elem
     rot_elem = (dof_node/2) * node_elem
  