OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
i24main_crit_tri.F
Go to the documentation of this file.
1Copyright> OpenRadioss
2Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3Copyright>
4Copyright> This program is free software: you can redistribute it and/or modify
5Copyright> it under the terms of the GNU Affero General Public License as published by
6Copyright> the Free Software Foundation, either version 3 of the License, or
7Copyright> (at your option) any later version.
8Copyright>
9Copyright> This program is distributed in the hope that it will be useful,
10Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12Copyright> GNU Affero General Public License for more details.
13Copyright>
14Copyright> You should have received a copy of the GNU Affero General Public License
15Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16Copyright>
17Copyright>
18Copyright> Commercial Alternative: Altair Radioss Software
19Copyright>
20Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21Copyright> software under a commercial license. Contact Altair to discuss further if the
22Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23!||====================================================================
24!|| i24main_crit_tri ../engine/source/interfaces/intsort/i24main_crit_tri.F
25!||--- called by ------------------------------------------------------
26!|| inttri ../engine/source/interfaces/intsort/inttri.F
27!||--- calls -----------------------------------------------------
28!|| i24buce_crit ../engine/source/interfaces/intsort/i24buce_crit.F
29!||--- uses -----------------------------------------------------
30!|| intbufdef_mod ../common_source/modules/interfaces/intbufdef_mod.F90
31!||====================================================================
32 SUBROUTINE i24main_crit_tri(
33 1 IPARI ,INTBUF_TAB ,X ,NIN ,
34 2 ITASK ,V ,XSLV_L ,XMSR_L ,VSLV_L ,
35 3 VMSR_L ,DELTA_PMAX_GAP,DELTA_PMAX_DGAP,
36 4 DELTA_PMAX_GAP_NODE,ITAB)
37C-----------------------------------------------
38C M o d u l e s
39C-----------------------------------------------
40 USE intbufdef_mod
41C-----------------------------------------------
42C I m p l i c i t T y p e s
43C-----------------------------------------------
44#include "implicit_f.inc"
45C-----------------------------------------------
46C C o m m o n B l o c k s
47C-----------------------------------------------
48#include "com04_c.inc"
49#include "com08_c.inc"
50#include "param_c.inc"
51C-----------------------------------------------
52C D u m m y A r g u m e n t s
53C-----------------------------------------------
54 INTEGER NIN,ITASK,
55 . IPARI(NPARI,NINTER),DELTA_PMAX_GAP_NODE,ITAB(*)
56C REAL
57 my_real
58 . x(3,*), v(3,*),delta_pmax_gap,pmax_gap,
59 . xslv_l(*), xmsr_l(*), vslv_l(*), vmsr_l(*),
60 . delta_pmax_dgap
61 TYPE(intbuf_struct_) INTBUF_TAB
62C-----------------------------------------------
63C L o c a l V a r i a b l e s
64C-----------------------------------------------
65 INTEGER IEDGE,INTPLY
66C REAL
67 my_real
68 . STARTT, STOPT, BID(1)
69 INTEGER :: NMN,NSN
70C-----------------------------------------------
71C S o u r c e L i n e s
72C-----------------------------------------------
73C
74 nsn =ipari(5,nin)
75 nmn =ipari(6,nin)
76 iedge =ipari(58,nin)
77 intply =ipari(66,nin)
78C
79C OW CALCUL DU CRITERE DE TRI : OPTIMISER avec NSN = IPARI(5,NIN) - NSNE
80
81 startt=intbuf_tab%VARIABLES(3)
82 stopt =intbuf_tab%VARIABLES(11)
83 IF(startt>tt) RETURN
84 IF(tt>stopt) RETURN
85C
86C test temporaire pour assurer la compatibilite restart en 51d et 51e
87 IF(intbuf_tab%VARIABLES(16)==zero)intbuf_tab%VARIABLES(16)=ep30
88 CALL i24buce_crit(
89 1 x ,intbuf_tab%NSV,intbuf_tab%MSR,nsn ,nmn ,
90 2 itask ,intbuf_tab%XSAV,nin ,intbuf_tab%STFNS,v ,
91 3 xslv_l ,xmsr_l ,vslv_l ,vmsr_l ,intbuf_tab%PENE_OLD,
92 4 intbuf_tab%GAP_S,intbuf_tab%GAPN_M,delta_pmax_gap,intbuf_tab%VARIABLES(23),
93 5 intbuf_tab%EDGE8L2,intbuf_tab%ISEADD,intbuf_tab%ISEDGE,iedge,intbuf_tab%DGAP_M,
94 6 intbuf_tab%DELTA_PMAX_DGAP,intply ,delta_pmax_gap_node,itab )
95C
96 RETURN
97 END
subroutine i24buce_crit(x, nsv, msr, nsn, nmn, itask, xsav, nin, stfn, v, xslv_g, xmsr_g, vslv_g, vmsr_g, pene_old, gap_s, gapn_m, delta_pmax_gap, pmax_gap, edge_l2, iseadd, isedge, iedge, dgap_m, delta_pmax_dgap, intply, delta_pmax_gap_node, itab)
subroutine i24main_crit_tri(ipari, intbuf_tab, x, nin, itask, v, xslv_l, xmsr_l, vslv_l, vmsr_l, delta_pmax_gap, delta_pmax_dgap, delta_pmax_gap_node, itab)