anchor.diff:      nn = hecmw_get_max_node( ic_type )
   !C element loop
   !$omp parallel default(none), &
  -!$omp&  private(icel,js,j,nodLOCAL,xx,yy,zz,ecoord,edisp,isect,cdsys_ID,ihead,thick,mixflag,stiff,iflag,coords), &
  +!$omp&  private(icel,js,j,k,in,nodLOCAL,xx,yy,zz,ecoord,edisp,isect,cdsys_ID,ihead,thick,mixflag,stiff,iflag,coords), &
   !$omp&  shared(iS,iE,hecMESH,temp,ref_temp,fstrSOLID,id_spc,force), &
   !$omp&  firstprivate(nn,ic_type,tt,tt0)
   !$omp do
  
positive.code:   type (hecmwST_local_mesh) :: hecMESH
    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)
  
negative.code:                              & hecMESH%section%sect_R_item(ihead+1:), stiff )
            END IF
            force(1:nn*3) = MATMUL( stiff(1:nn*3,1:nn*3), edisp(1:nn*3) )
            do j = 1, nn
              in = nodLOCAL(j)
              do k = 1, 3
                if( id_spc(3*in-3+k) == 0 ) cycle
                !$omp atomic
                fstrSOLID%QFORCE(3*in-3+k) = fstrSOLID%QFORCE(3*in-3+k) + force(3*j-3+k)
              enddo
            enddo
          ENDIF
          CYCLE
        else if( ic_type == 361 ) then
  