anchor.diff:  !--- calculate reaction force
         iflag = 0
         do j = 1, nn
  -        if( id_spc( nodLOCAL(j) ) == 1 ) iflag = 1
  +          in = nodLOCAL(j)
  +          IF( id_spc( 3*in-2 ) == 1 ) iflag = 1
  +          IF( id_spc( 3*in-1 ) == 1 ) iflag = 1
  +          IF( id_spc( 3*in   ) == 1 ) iflag = 1
         enddo
         if( iflag == 1 ) then
           if( ic_type == 361 ) then
  
positive.code:           END IF
            force(1:nn*3) = MATMUL( stiff(1:nn*3,1:nn*3), edisp(1:nn*3) )
            DO j = 1, nn
              IF( id_spc( nodLOCAL(j) ) == 1 ) THEN
  !$omp atomic
                fstrSOLID%QFORCE( 3*nodLOCAL(j)-2 ) = fstrSOLID%QFORCE( 3*nodLOCAL(j)-2 )+force(3*j-2)
  !$omp atomic
                fstrSOLID%QFORCE( 3*nodLOCAL(j)-1 ) = fstrSOLID%QFORCE( 3*nodLOCAL(j)-1 )+force(3*j-1)
  !$omp atomic
                fstrSOLID%QFORCE( 3*nodLOCAL(j)   ) = fstrSOLID%QFORCE( 3*nodLOCAL(j)   )+force(3*j  )
              END IF
            END DO
          ENDIF
          CYCLE
  
negative.code:   type (fstr_solid)  :: fstrSOLID
  !C** local variables
    integer(kind=kint) :: itype, icel, iS, iE, jS, i, j, ic_type, ig, nn, isect, ihead, iflag, mixflag
    integer(kind=kint) :: nodLOCAL(20), flag_dof, ityp, idofS, idofE, idof, in
    real(kind=kreal)   :: xx(20), yy(20), zz(20), tt(20), tt0(20), edisp(60), force(60)
    real(kind=kreal)   :: ecoord(3, 20), stiff(60, 60)
    real(kind=kreal)   :: thick, coords(3, 3)
  