anchor.diff:     ! interpolate u to find u_interp = u(t) = u_n     
      CALL SD_Input_ExtrapInterp( u, utimes, u_interp, t, ErrStat2, ErrMsg2 ); CALL SetErrStat(ErrStat2,ErrMsg2,ErrStat,ErrMsg,'SD_AM2')
      m%udotdot_TP = (/u_interp%TPMesh%TranslationAcc(:,1), u_interp%TPMesh%RotationAcc(:,1)/)
  -   CALL ConstructUFL( u_interp, p, m, m%UFL )     
  +   CALL GetExtForceOnInternalDOF( u_interp, p, m, m%UFL )     
                   
      ! extrapolate u to find u_interp = u(t + dt)=u_n+1
      CALL SD_Input_ExtrapInterp(u, utimes, u_interp, t+p%SDDeltaT, ErrStat2, ErrMsg2); CALL SetErrStat(ErrStat2,ErrMsg2,ErrStat,ErrMsg,'SD_AM2')
      udotdot_TP2 = (/u_interp%TPMesh%TranslationAcc(:,1), u_interp%TPMesh%RotationAcc(:,1)/)
  -   CALL ConstructUFL( u_interp, p, m, UFL2 )     
  +   CALL GetExtForceOnInternalDOF( u_interp, p, m, UFL2 )     
      
      ! calculate (u_n + u_n+1)/2
      udotdot_TP2 = 0.5_ReKi * ( udotdot_TP2 + m%udotdot_TP )
  
positive.code: !> Construct force vector on internal DOF (L) from the values on the input mesh 
  !! First, the full vector of external forces is built on the non-reduced DOF
  !! Then, the vector is reduced using the Tred matrix
  SUBROUTINE ConstructUFL( u, p, m, UFL )
     type(SD_InputType),     intent(in   )  :: u ! Inputs
     type(SD_ParameterType), intent(in   )  :: p ! Parameters
     type(SD_MiscVarType),   intent(inout)  :: m ! Misc, for storage optimization of Fext and Fext_red
  
negative.code:    m%Fext_red = matmul(transpose(p%T_red), m%Fext)
     UFL= m%Fext_red(p%ID__L)
  
  END SUBROUTINE GetExtForceOnInternalDOF
  
  !------------------------------------------------------------------------------------------------------
  !> Output the summary file    
  