OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
nsegmt.F File Reference
#include "implicit_f.inc"
#include "com04_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine nsegmt (ipar, irect, nodes, nseg, nst, nrt, nno)

Function/Subroutine Documentation

◆ nsegmt()

subroutine nsegmt ( integer, intent(out) ipar,
integer, dimension(4,*), intent(in) irect,
integer, dimension(*), intent(in) nodes,
integer, dimension(*), intent(out) nseg,
integer, intent(out) nst,
integer, intent(in) nrt,
integer, intent(in) nno )

Definition at line 29 of file nsegmt.F.

30C
31C-----------------------------------------------
32C I m p l i c i t T y p e s
33C-----------------------------------------------
34#include "implicit_f.inc"
35C-----------------------------------------------
36C D u m m y A r g u m e n t s
37C-----------------------------------------------
38 INTEGER, INTENT(IN) :: NRT, NNO, IRECT(4,*), NODES(*)
39 INTEGER, INTENT(OUT) :: IPAR, NST, NSEG(*)
40C-----------------------------------------------
41C C o m m o n B l o c k s
42C-----------------------------------------------
43#include "com04_c.inc"
44C-----------------------------------------------
45C L o c a l V a r i a b l e s
46C-----------------------------------------------
47 INTEGER I, J, K
48 INTEGER, DIMENSION(:), ALLOCATABLE :: NTAG
49C-----------------------------------------------
50C S o u r c e L i n e s
51C-----------------------------------------------
52 nst = 0
53 nseg(1) = 1
54 nseg(2:nno+1) = 0
55C
56 ALLOCATE(ntag(numnod))
57 DO i=1,nno
58 ntag(nodes(i))=i
59 ENDDO
60C
61 DO i=1,nrt
62 DO j=1,4
63 IF (irect(j,i) /= 0) THEN
64 k = ntag(irect(j,i))+1
65 nseg(k)=nseg(k)+1
66 ENDIF
67 ENDDO
68 ENDDO
69 DEALLOCATE(ntag)
70C
71 DO i=1,nno
72 nst = nst+nseg(i+1)
73 nseg(i+1)=nseg(i)+nseg(i+1)
74 ENDDO
75 ipar=nst
76C
77 RETURN