1 /***********************************************************************
2 *
3 *               *****   ***    ***
4 *                  *   *   *  *   *
5 *                 *     ***    ***
6 *                *     *   *  *   *
7 *               *****   ***    ***
8 *
9 * A FREE Finite Elements Analysis Program in ANSI C for the Windows & UNIX OS.
10 *
11 * Composed and edited and copyright by
12 * Professor Dr.-Ing. Frank Rieg, University of Bayreuth, Germany
13 *
14 * eMail:
15 * frank.rieg@uni-bayreuth.de
16 * dr.frank.rieg@t-online.de
17 *
18 * V15.0  November 18, 2015
19 *
20 * This program is free software; you can redistribute it and/or modify
21 * it under the terms of the GNU General Public License as published by
22 * the Free Software Foundation; either version 2, or (at your option)
23 * any later version.
24 *
25 * This program is distributed in the hope that it will be useful,
26 * but WITHOUT ANY WARRANTY; without even the implied warranty of
27 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
28 * GNU General Public License for more details.
29 *
30 * You should have received a copy of the GNU General Public License
31 * along with this program; see the file COPYING.  If not, write to
32 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
33 ***********************************************************************/
34 /***********************************************************************
35 * wlog88o gibt Log-Datei-Meldungen aus (1 FR_INT4, 1 int)
36 * Fuer UNIX !
37 * 18.11.2015 Rieg
38 ***********************************************************************/
39 
40 /***********************************************************************
41 * UNIX
42 ***********************************************************************/
43 #ifdef FR_UNIX
44 #include <z88o.h>
45 #include <stdio.h>  /* fprintf, fflush */
46 #endif
47 
48 /***********************************************************************
49 * Leseformate
50 ***********************************************************************/
51 #ifdef FR_XINT
52 #define PD "%d"
53 #endif
54 
55 #ifdef FR_XLONG
56 #define PD "%ld"
57 #endif
58 
59 #ifdef FR_XLOLO
60 #define PD "%lld"
61 #endif
62 
63 /***********************************************************************
64 * hier beginnt Function wlog88o
65 ***********************************************************************/
wlog88o(FR_INT4 i,int iatx)66 int wlog88o(FR_INT4 i,int iatx)
67 {
68 extern FILE *fwlo;
69 
70 extern FR_INT4 LANG;
71 
72 switch(iatx)
73   {
74   case LOG_BZ88OWIN:
75     if(LANG == 1) fprintf(fwlo,"Start Z88O Version 15OS");
76     if(LANG == 2) fprintf(fwlo,"start Z88O version 15OS");
77     fflush(fwlo);
78   break;
79 
80   case LOG_OPENDYN:
81     if(LANG == 1) fprintf(fwlo,"\nOeffnen der Datei Z88.DYN");
82     if(LANG == 2) fprintf(fwlo,"\nopening file Z88.DYN");
83     fflush(fwlo);
84   break;
85 
86   case LOG_NODYN:
87     if(LANG == 1) fprintf(fwlo,"\n### kann Z88.DYN nicht oeffnen ..Stop ###");
88     if(LANG == 2) fprintf(fwlo,"\n### cannot open Z88.DYN ..stop ###");
89     fflush(fwlo);
90   break;
91 
92   case LOG_WRONGDYN:
93     if(LANG == 1) fprintf(fwlo,"\n### File Z88.DYN ist nicht korrekt ..Stop ###");
94     if(LANG == 2) fprintf(fwlo,"\n### file Z88.DYN is not correct ..stop ###");
95     fflush(fwlo);
96   break;
97 
98   case LOG_NOMAN:
99     if(LANG == 1) fprintf(fwlo,"\n### kann Z88MAN.TXT nicht oeffnen ..Stop ###");
100     if(LANG == 2) fprintf(fwlo,"\n### cannot open Z88MAN.TXT ..stop ###");
101     fflush(fwlo);
102   break;
103 
104   case LOG_WRONGMAN:
105     if(LANG == 1) fprintf(fwlo,"\n### File Z88MAN.TXT ist nicht korrekt ..Stop ###");
106     if(LANG == 2) fprintf(fwlo,"\n### file Z88MAN.TXT is not correct ..stop ###");
107     fflush(fwlo);
108   break;
109 
110   case LOG_MAXKOI:
111     fprintf(fwlo,"\nMAXKOI = " PD,i);
112     fflush(fwlo);
113   break;
114 
115   case LOG_MAXK:
116     fprintf(fwlo,"\nMAXK   = " PD,i);
117     fflush(fwlo);
118   break;
119 
120   case LOG_MAXE:
121     fprintf(fwlo,"\nMAXE   = " PD,i);
122     fflush(fwlo);
123   break;
124 
125   case LOG_OKDYN:
126     if(LANG == 1) fprintf(fwlo,"\nDatei Z88.DYN gelesen..scheint formal o.k. zu sein");
127     if(LANG == 2) fprintf(fwlo,"\nfile Z88.DYN read ..seems to be o.k.");
128     fflush(fwlo);
129   break;
130 
131   case LOG_ALLOCMEMY:
132     if(LANG == 1) fprintf(fwlo,"\nDynamisches Memory anlegen:");
133     if(LANG == 2) fprintf(fwlo,"\nallocating dynamic memory:");
134     fflush(fwlo);
135   break;
136 
137   case LOG_ARRAYNOTOK:
138     if(LANG == 1) fprintf(fwlo,"\n### Memory Kennung " PD " nicht o.k. ..Stop ###",i);
139     if(LANG == 2) fprintf(fwlo,"\n### memory id " PD " is not o.k. ..stop ###",i);
140     fflush(fwlo);
141   break;
142 
143   case LOG_ARRAYOK:
144     if(LANG == 1) fprintf(fwlo,"\nMemory Kennung " PD " angelegt",i);
145     if(LANG == 2) fprintf(fwlo,"\nmemory id " PD " allocated",i);
146     fflush(fwlo);
147   break;
148 
149   case LOG_SUMMEMY:
150     if(LANG == 1) fprintf(fwlo,"\nDynamisches Memory total angefordert: " PD " Bytes",i);
151     if(LANG == 2) fprintf(fwlo,"\ndynamic memory totally allocated: " PD " Bytes",i);
152     fflush(fwlo);
153   break;
154 
155   case LOG_EXITDYN88O:
156     if(LANG == 1) fprintf(fwlo,"\nVerlassen Speichereinheit DYN88O");
157     if(LANG == 2) fprintf(fwlo,"\nleaving storage function DYN88O");
158     fflush(fwlo);
159   break;
160 
161   case LOG_REAO2:
162     if(LANG == 1) fprintf(fwlo,"\nStart Lesen Z88O2.TXT");
163     if(LANG == 2) fprintf(fwlo,"\nstart reading Z88O2.TXT");
164     fflush(fwlo);
165   break;
166 
167   case LOG_REAO2OK:
168     if(LANG == 1) fprintf(fwlo,"\nZ88O2.TXT fertig eingelesen");
169     if(LANG == 2) fprintf(fwlo,"\nZ88O2.TXT totally read");
170     fflush(fwlo);
171   break;
172 
173   case LOG_REAO8:
174     if(LANG == 1) fprintf(fwlo,"\nStart Lesen Z88O8.TXT");
175     if(LANG == 2) fprintf(fwlo,"\nstart reading Z88O8.TXT");
176     fflush(fwlo);
177   break;
178 
179   case LOG_REAO8OK:
180     if(LANG == 1) fprintf(fwlo,"\nZ88O8.TXT fertig eingelesen");
181     if(LANG == 2) fprintf(fwlo,"\nZ88O8.TXT totally read");
182     fflush(fwlo);
183     break;
184 
185   case LOG_REAI1:
186     if(LANG == 1) fprintf(fwlo,"\nStart Lesen Z88I1.TXT");
187     if(LANG == 2) fprintf(fwlo,"\nstart reading Z88I1.TXT");
188     fflush(fwlo);
189   break;
190 
191   case LOG_REAI1OK:
192     if(LANG == 1) fprintf(fwlo,"\nZ88I1.TXT fertig eingelesen");
193     if(LANG == 2) fprintf(fwlo,"\nZ88I1.TXT totally read");
194     fflush(fwlo);
195     break;
196 
197   case LOG_NOSTRFI:
198     if(LANG == 1)
199       {
200       fprintf(fwlo,"\n??? Versuchte Strukturfile zu laden   ???");
201       fprintf(fwlo,"\n??? aber File nicht gefunden ..weiter ???");
202       }
203     if(LANG == 2)
204       {
205       fprintf(fwlo,"\n??? tried to load structure file        ???");
206       fprintf(fwlo,"\n??? but could not find file  ..continue ???");
207       }
208     fflush(fwlo);
209   break;
210 
211   case LOG_NOO2:
212     if(LANG == 1)
213       {
214       fprintf(fwlo,"\n??? Versuchte Z88O2.TXT zu laden      ???");
215       fprintf(fwlo,"\n??? aber File nicht gefunden ..weiter ???");
216       }
217     if(LANG == 2)
218       {
219       fprintf(fwlo,"\n??? tried to load Z88O2.TXT            ???");
220       fprintf(fwlo,"\n??? but could not find file ..continue ???");
221       }
222     fflush(fwlo);
223   break;
224 
225   case LOG_NOO8:
226     if(LANG == 1)
227       {
228       fprintf(fwlo,"\n??? Versuchte Z88O8.TXT zu laden      ???");
229       fprintf(fwlo,"\n??? aber File nicht gefunden ..weiter ???");
230       }
231     if(LANG == 2)
232       {
233       fprintf(fwlo,"\n??? tried to load Z88O8.TXT            ???");
234       fprintf(fwlo,"\n??? but could not find file ..continue ???");
235       }
236     fflush(fwlo);
237   break;
238 
239   case LOG_EXMAXK:
240     if(LANG == 1)
241       {
242       fprintf(fwlo,"\n### Mehr als " PD " Knoten, zuwenig Memory ###",i);
243       fprintf(fwlo,"\n### Abhilfe: MAXK in Z88.DYN erhoehen..Stop ###");
244       }
245     if(LANG == 2)
246       {
247       fprintf(fwlo,"\n### more than " PD " nodes, memory exhausted ###",i);
248       fprintf(fwlo,"\n### recover: increase MAXK in Z88.DYN..stop ###");
249       }
250     fflush(fwlo);
251   break;
252 
253   case LOG_EXMAXE:
254     if(LANG == 1)
255       {
256       fprintf(fwlo,"\n### Mehr als " PD " Elemente, zuwenig Memory ###",i);
257       fprintf(fwlo,"\n### Abhilfe: MAXE in Z88.DYN erhoehen..Stop ###");
258       }
259     if(LANG == 2)
260       {
261       fprintf(fwlo,"\n### more than " PD " elements, memory exhausted ###",i);
262       fprintf(fwlo,"\n### recover: increase MAXE in Z88.DYN..stop ###");
263       }
264     fflush(fwlo);
265   break;
266 
267   case LOG_WRONGDIM:
268     if(LANG == 1)
269       {
270       fprintf(fwlo,"\n### Falsche Dimension in Z88I1.TXT bzw. Z88NI.TXT ###");
271       fprintf(fwlo,"\n### Abhilfe : Dimension 2 oder 3 waehlen ..Stop   ###");
272       }
273     if(LANG == 2)
274       {
275       fprintf(fwlo,"\n### wrong dimension in Z88I1.TXT or Z88NI.TXT ###");
276       fprintf(fwlo,"\n### recover: choose dimension 2 or 3 ..stop   ###");
277       }
278     fflush(fwlo);
279   break;
280 
281   case LOG_NOFCD:
282     if(LANG == 1)
283       {
284       fprintf(fwlo,"\n### Kann Font-Farb-Abm-Datei Z88.FCD nicht oeffnen ###");
285       fprintf(fwlo,"\n### Datei fehlt, gelockt oder falsch ..Stop        ###");
286       }
287     if(LANG == 2)
288       {
289       fprintf(fwlo,"\n### cannot open font-color-dim file Z88.FCD ###");
290       fprintf(fwlo,"\n### file missing, locked or wrong ..stop    ###");
291       }
292     fflush(fwlo);
293     break;
294 
295   case LOG_WRONGFCD:
296     if(LANG == 1) fprintf(fwlo,"\n### Font-Farb-Abm-Datei Z88.FCD falsch ..Stop ###");
297     if(LANG == 2) fprintf(fwlo,"\n### font-color-dim file Z88.FCD is invalid ..stop ###");
298     fflush(fwlo);
299   break;
300 
301   case LOG_NO_GLX:
302     if(LANG == 1) fprintf(fwlo,"\n### kann GLX-Grafikkontext nicht oeffnen ..Stop ###");
303     if(LANG == 2) fprintf(fwlo,"\n### cannot open GLX Grafics Context ..stop ###");
304     fflush(fwlo);
305   break;
306 
307   case LOG_NINT0:
308     if(LANG == 1)
309       {
310       fprintf(fwlo,"\n### Integrationsordnung ist Null, d.h. Eckknoten  ###");
311       fprintf(fwlo,"\n### Waehle Integrationsordnung 1..4 in Z88INT.TXT ###");
312       fprintf(fwlo,"\n### Dann neuer Lauf Z88R ..Stop                   ###");
313       }
314     if(LANG == 2)
315       {
316       fprintf(fwlo,"\n### Integration constant is zero, corner node      ###");
317       fprintf(fwlo,"\n### Choose integration constant 1..4 in Z88INT.TXT ###");
318       fprintf(fwlo,"\n### Then start an new Z88R run ..stop              ###");
319       }
320     fflush(fwlo);
321   break;
322 
323   case LOG_EXMAXGP:
324     if(LANG == 1)
325       {
326       fprintf(fwlo,"\n### Mehr als " PD " Gausspunkte fuer Spannungen  ###",i);
327       fprintf(fwlo,"\n### Abhilfe: MAXGP in Z88.DYN erhoehen ..Stop ###");
328       }
329     if(LANG == 2)
330       {
331       fprintf(fwlo,"\n### More than " PD " Gauss points for stresses   ###",i);
332       fprintf(fwlo,"\n### Recover: increase MAXGP in Z88.DYN ..Stop ###");
333       }
334     fflush(fwlo);
335   break;
336 
337   }
338 return(0);
339 }
340