-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathSMAAspUserUtilities.hdr
53 lines (37 loc) · 1.45 KB
/
SMAAspUserUtilities.hdr
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
!=============================================================================
! COPYRIGHT DASSAULT SYSTEMES 2001-2013
!
! @CAA2Level L0
! @CAA2Usage U0
!
!=============================================================================
C
C Fortran interface to utilities used in Parallel User Subroutines
C
INTERFACE
! Function to find out the number of threads in ABAQUS
FUNCTION GETNUMTHREADS ( ) RESULT( numThreads )
INTEGER(KIND=4) :: numThreads
END FUNCTION GETNUMTHREADS
! Get ID of the current thread ( an ABAQUS assigned integer )
FUNCTION get_thread_id ( ) RESULT ( threadID )
INTEGER(KIND=4) :: threadID
END FUNCTION get_thread_id
! Get ABAQUS MPI communicator or 0 if not in MPI mode
FUNCTION GETCOMMUNICATOR ( ) RESULT ( communicator )
INTEGER(KIND=4) :: communicator
END FUNCTION GETCOMMUNICATOR
! Initialize Mutex -- Typically, this is done at the
! beginning of the analysis in UXTERNALDB/VEXTERNALDB
SUBROUTINE MutexInit ( ID )
INTEGER(KIND=4) :: ID
END SUBROUTINE MutexInit
! Lock Mutex -- can be called anywhere after initialization
SUBROUTINE MutexLock ( ID )
INTEGER(KIND=4) :: ID
END SUBROUTINE MutexLock
! Unlock Mutex -- can be called anywhere after initialization
SUBROUTINE MutexUnlock ( ID )
INTEGER(KIND=4) :: ID
END SUBROUTINE MutexUnlock
END INTERFACE