OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
forani1.F File Reference
#include "implicit_f.inc"
#include "scr14_c.inc"
#include "scr16_c.inc"
#include "parit_c.inc"
#include "vectorize.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine forani1 (fani, a, nfia, nfea, nfoa, nodft, nodlt, fext, h3d_data)

Function/Subroutine Documentation

◆ forani1()

subroutine forani1 ( fani,
a,
integer nfia,
integer nfea,
integer nfoa,
integer nodft,
integer nodlt,
fext,
type (h3d_database) h3d_data )

Definition at line 30 of file forani1.F.

31C-----------------------------------------------
32C D e s c r i p t i o n
33C-----------------------------------------------
34C This subroutine is related to output of FINT and FEXT vectors.
35C When FORANI1 is called, A is containing: FEXT
36C When FORANI2 is called, A is containing: FEXT+FINT
37C When FORANI3 is called, A is containing:(FEXT+FINT+FGRAV)/m
38C
39C forani1 forani2 forani3
40C FANI(:,N+NFIA) = -FEXT +(FEXT+FINT) = FINT
41C FANI(:,N+NFEA) = +FEXT -(FEXT+FINT) + [(FEXT+FINT+FRAV)/m]*m = FEXT+FGRAV
42C
43C-----------------------------------------------
44C
45C ANIM_V(5) : /ANIM/VECT/FINT
46C OUTP_V(5) : /OUTP/VECT/FINT
47C H3D_DATA%N_VECT_FINT : /H3D/NODA/FINT
48C
49C ANIM_V(6) : /ANIM/VECT/FEXT
50C OUTP_V(6) : /OUTP/VECT/FEXT
51C H3D_DATA%N_VECT_FEXT : /H3D/NODA/FEXT
52C
53C-----------------------------------------------
54C M o d u l e s
55C-----------------------------------------------
56 USE h3d_mod
57C-----------------------------------------------
58C I m p l i c i t T y p e s
59C-----------------------------------------------
60#include "implicit_f.inc"
61C-----------------------------------------------
62C C o m m o n B l o c k s
63C-----------------------------------------------
64!ANIM_V
65#include "scr14_c.inc"
66!OUTP_V
67#include "scr16_c.inc"
68!IPARIT
69#include "parit_c.inc"
70C-----------------------------------------------
71C D u m m y A r g u m e n t s
72C-----------------------------------------------
73 INTEGER NFIA,NFEA,NFOA,NODFT,NODLT
74 my_real a(3,*),fani(3,*),fext(3,*)
75 TYPE (H3D_DATABASE) :: H3D_DATA
76C-----------------------------------------------
77C L o c a l V a r i a b l e s
78C-----------------------------------------------
79 INTEGER N,I
80C-----------------------------------------------
81C S o u r c e L i n e s
82C-----------------------------------------------
83
84C --- PARITH OFF CASE
85 IF(iparit == 0)THEN
86 IF(anim_v(5)+outp_v(5)+h3d_data%N_VECT_FINT > 0) THEN
87 !if FINT is requested (ANIM or OUTP or H3D)
88#include "vectorize.inc"
89 DO n=nodft,nodlt
90 fani(1,n+nfia) = - a(1,n)
91 fani(2,n+nfia) = - a(2,n)
92 fani(3,n+nfia) = - a(3,n)
93 ENDDO
94 ENDIF
95 IF(anim_v(6)+outp_v(6)+h3d_data%N_VECT_FEXT > 0) THEN
96 !if FEXT is requested (ANIM or OUTP or H3D)
97#include "vectorize.inc"
98 DO n=nodft,nodlt
99 fani(1,n+nfea) = a(1,n)
100 fani(2,n+nfea) = a(2,n)
101 fani(3,n+nfea) = a(3,n)
102 ENDDO
103 ENDIF
104
105
106C --- PARITH ON CASE
107 ELSE
108 IF(anim_v(5)+outp_v(5)+h3d_data%N_VECT_FINT >0) THEN
109#include "vectorize.inc"
110 DO n=nodft,nodlt
111 fani(1,n+nfia) = - fext(1,n)
112 fani(2,n+nfia) = - fext(2,n)
113 fani(3,n+nfia) = - fext(3,n)
114 ENDDO
115 ENDIF
116 IF(anim_v(6)+outp_v(6)+h3d_data%N_VECT_FEXT > 0) THEN
117#include "vectorize.inc"
118 DO n=nodft,nodlt
119 fani(1,n+nfea) = fext(1,n)
120 fani(2,n+nfea) = fext(2,n)
121 fani(3,n+nfea) = fext(3,n)
122 ENDDO
123 ENDIF
124 IF(anim_v(5)+outp_v(5)+h3d_data%N_VECT_FINT > 0 .OR. anim_v(6)+outp_v(6)+h3d_data%N_VECT_FEXT > 0) THEN
125#include "vectorize.inc"
126 DO n=nodft,nodlt
127 fext(1,n)=zero
128 fext(2,n)=zero
129 fext(3,n)=zero
130 ENDDO
131 ENDIF
132 ENDIF
133C-----------------------------------------------
134 RETURN
#define my_real
Definition cppsort.cpp:32