1!
2!     CalculiX - A 3-dimensional finite element program
3!              Copyright (C) 1998-2021 Guido Dhondt
4!
5!     This program is free software; you can redistribute it and/or
6!     modify it under the terms of the GNU General Public License as
7!     published by the Free Software Foundation(version 2);
8!
9!
10!     This program is distributed in the hope that it will be useful,
11!     but WITHOUT ANY WARRANTY; without even the implied warranty of
12!     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13!     GNU General Public License for more details.
14!
15!     You should have received a copy of the GNU General Public License
16!     along with this program; if not, write to the Free Software
17!     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18!
19      subroutine checktruecontact(ntie,tieset,tietol,elcon,itruecontact,
20     &  ncmat_,ntmat_)
21!
22!     check whether for face-to-face penalty contact the
23!     surface behavior definition is such that true contact is
24!     defined and not just tied contact
25!
26      implicit none
27!
28      character*81 tieset(3,*)
29!
30      integer itruecontact,i,ntie,imat,ncmat_,ntmat_
31!
32      real*8 tietol(3,*),elcon(0:ncmat_,ntmat_,*)
33!
34!     if at least one tied contact is present, itruecontact
35!     is set to zero and no check is performed whether tension
36!     occurs in the contact areas
37!
38      itruecontact=1
39      do i=1,ntie
40         if(tieset(1,i)(81:81).eq.'C') then
41            imat=int(tietol(2,i))
42            if(int(elcon(3,1,imat)).eq.4) then
43               itruecontact=0
44               exit
45            endif
46         endif
47      enddo
48!
49      return
50      end
51