anchor.diff:           qdotdot2(1)    =       elementWaterState *u%DistribMesh%TranslationAcc(1,J)
            qdotdot2(2)    =       elementWaterState *u%DistribMesh%TranslationAcc(2,J)
            qdotdot2(3)    =       elementWaterState *u%DistribMesh%TranslationAcc(3,J)
  -         m%D_F_AM_M(:,J)  = -matmul( p%D_AM_M (:,:,J) , qdotdot2 )  !bjj: these lines take up a lot of time. are the matrices sparse?
  +         
  +            ! calculated the added mass forces (moments are zero)
  +         m%D_F_AM_M(1:3,J)  = -matmul( p%D_AM_M (:,:,J) , qdotdot2 )  !bjj: these lines take up a lot of time. are the matrices sparse?
   
            DO I=1,6
               IF (I < 4 ) THEN
  
positive.code:   
        ! Local variables
           
     INTEGER                                      :: I    !, J, j1, j2, tempINT                ! generic integer for counting
  !   TYPE(Morison_JointType)                      :: joint1, joint2                                   
  !   Real(ReKi)                                   :: z1
  !   Real(ReKi)                                   :: z2
  
negative.code:     !  p%NMorisonElements = 0
        
     END IF
        CONTAINS
  
          SUBROUTINE SWAP(x1,x2)
             Real(Reki),intent(inout) :: x1,x2
             Real(Reki) :: tmp
             tmp = x1
             x1  = x2
             x2  = tmp
          END SUBROUTINE SWAP
  END SUBROUTINE Morison_ProcessMorisonGeometry
  
  !----------------------------------------------------------------------------------------------------------------------------------
  