OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
analyse_part.c
Go to the documentation of this file.
1//Copyright> OpenRadioss
2//Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3//Copyright>
4//Copyright> This program is free software: you can redistribute it and/or modify
5//Copyright> it under the terms of the GNU Affero General Public License as published by
6//Copyright> the Free Software Foundation, either version 3 of the License, or
7//Copyright> (at your option) any later version.
8//Copyright>
9//Copyright> This program is distributed in the hope that it will be useful,
10//Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11//Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12//Copyright> GNU Affero General Public License for more details.
13//Copyright>
14//Copyright> You should have received a copy of the GNU Affero General Public License
15//Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16//Copyright>
17//Copyright>
18//Copyright> Commercial Alternative: Altair Radioss Software
19//Copyright>
20//Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21//Copyright> software under a commercial license. Contact Altair to discuss further if the
22//Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23/*
24 Cls41l42 : Create File
25*/
26/*********************************************************************
27 * INCLUDES
28 *********************************************************************/
29/*Cow41l6+++*/
30#include "hardware.inc"
31
32#if CPP_mach == CPP_w95 || CPP_mach == CPP_ant || CPP_mach == CPP_wnt
33/* el41m2 +1 #define _FCALL __stdcall*/
34#define _FCALL
35#elif 1
36#define _FCALL
37#endif
38/*Cow41l6---*/
39#include <stdio.h>
40#include <stdlib.h>
41
42#include "analyse_name.inc"
43
44#include "analyse.h"
45#include "analyse_part.h"
46
47static int NB_PART;
48static int *TAB_PART;
49
50void analyse_part_scan(int *tab_id)
51{
52 int i;
53 int nbthick;
54 int thick_shell_part = 0;
55
56 for(i=0; i<NB_PART; i++)
57 {
58 /* Shell */
59 nbthick = (TAB_PART[i] >> 0) & 0x1;
60
61 if (nbthick == 1)
62 {
63 analyse_stack_int(*(tab_id + i*50 + (4-1)));
64 analyse_call_error(AN_INFO, 461, ANINFO_BLIND_2);
65
66 thick_shell_part++;
67 }
68 }
69
70 analyse_stack_int(thick_shell_part);
72}
73
74void apartscan(int *itab)
75{
77}
78
79void apartscan_(int *itab)
80{
82}
83
84void apartscan__(int *itab)
85{
87}
88
89/*ow41l6 void APARTSCAN(int *itab)*/
90void _FCALL APARTSCAN(int *itab)
91{
93}
94
95/*********************************************************************/
96void analyse_part_set(int part_id, int type )
97{
98 /*
99 WARNING : START OF TAB IN FORTRAN AND C IS SHIFTED BY 1 :
100 part_id = 1, is the first elt in model, this means tab_part[0]
101 */
102 part_id = part_id - 1;
103
104 switch(type)
105 {
106 case CHECK_THICK_SHELL:
107 TAB_PART[part_id] = TAB_PART[part_id] | 0x1;
108 break;
109 }
110}
111
112void apartset(int *id, int *type)
113{
114 analyse_part_set(*id, *type);
115}
116
117void apartset_(int *id, int *type)
118{
119 analyse_part_set(*id, *type);
120}
121
122void apartset__(int *id, int *type)
123{
124 analyse_part_set(*id, *type);
125}
126
127/*ow41l6 void APARTSET(int *id, int *type) */
128void _FCALL APARTSET(int *id, int *type)
129{
130 analyse_part_set(*id, *type);
131}
132
133
134/*********************************************************************/
135static void analyse_part_tab_init(int nb)
136{
137 int i;
138
139 TAB_PART = (int *) malloc(sizeof(int)*nb);
140 NB_PART = nb;
141
142 for(i=0; i<NB_PART; i++)
143 {
144 TAB_PART[i] = 0;
145 }
146}
147
148void apartin( int *nb)
149{
151}
152
153void apartin_(int *nb)
154{
156}
157
158void apartin__( int *nb)
159{
161}
162
163/*ow41l6 void APARTIN(int *tab_part, int *nb)*/
164void _FCALL APARTIN( int *nb)
165{
167}
void analyse_stack_int(int i)
Definition analyse.c:334
void analyse_call_check(int id)
Definition analyse.c:802
void analyse_call_error(int type, int id, int mode)
Definition analyse.c:580
static void analyse_part_tab_init(int nb)
void apartscan_(int *itab)
void apartset(int *id, int *type)
void analyse_part_set(int part_id, int type)
void _FCALL APARTSCAN(int *itab)
void apartin_(int *nb)
void analyse_part_scan(int *tab_id)
void _FCALL APARTIN(int *nb)
void apartin(int *nb)
void apartin__(int *nb)
void apartscan__(int *itab)
void apartscan(int *itab)
static int * TAB_PART
void _FCALL APARTSET(int *id, int *type)
void apartset_(int *id, int *type)
void apartset__(int *id, int *type)
static int NB_PART
#define _FCALL