21dcfe2d9b69d54c128cf1e3cc2675ded38fd10c
[occt.git] / src / AdvApp2Var / AdvApp2Var_MathBase.hxx
1 // Copyright (c) 1999-2012 OPEN CASCADE SAS
2 //
3 // The content of this file is subject to the Open CASCADE Technology Public
4 // License Version 6.5 (the "License"). You may not use the content of this file
5 // except in compliance with the License. Please obtain a copy of the License
6 // at http://www.opencascade.org and read it completely before using this file.
7 //
8 // The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
9 // main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
10 //
11 // The Original Code and all software distributed under the License is
12 // distributed on an "AS IS" basis, without warranty of any kind, and the
13 // Initial Developer hereby disclaims all such warranties, including without
14 // limitation, any warranties of merchantability, fitness for a particular
15 // purpose or non-infringement. Please see the License for the specific terms
16 // and conditions governing the rights and limitations under the License.
17
18 // AdvApp2Var_MathBase.hxx
19 #ifndef AdvApp2Var_MathBase_HeaderFile
20 #define AdvApp2Var_MathBase_HeaderFile
21
22
23 #include <Standard_Macro.hxx>
24 #include <AdvApp2Var_Data_f2c.hxx>
25 class AdvApp2Var_MathBase {
26  public:
27   ///
28   Standard_EXPORT static int mmapcmp_(integer*, 
29                                       integer*, 
30                                       integer*, 
31                                       double*, 
32                                       double*);
33
34   Standard_EXPORT static int mmdrc11_(integer* , 
35                                       integer* , 
36                                       integer* ,
37                                       doublereal* , 
38                                       doublereal* , 
39                                       doublereal* );
40
41   Standard_EXPORT static int mmfmca9_( integer* , 
42                                       integer* , 
43                                       integer* , 
44                                       integer* ,
45                                       integer* , 
46                                       integer* , 
47                                       doublereal* , 
48                                       doublereal* );
49
50   Standard_EXPORT static int mmfmcb5_( integer* , 
51                                       integer* , 
52                                       integer* , 
53                                       doublereal* ,
54                                       integer* , 
55                                       integer* ,
56                                       integer* , 
57                                       doublereal* , 
58                                       integer* );
59
60   Standard_EXPORT static void mmwprcs_(doublereal*, 
61                                        doublereal*, 
62                                        doublereal*, 
63                                        doublereal*, 
64                                        integer*, 
65                                        integer*);
66   ///
67   Standard_EXPORT static int mmcglc1_(integer *ndimax, 
68                                       integer *ndimen, 
69                                       integer *ncoeff, 
70                                       doublereal *courbe, 
71                                       doublereal *tdebut, 
72                                       doublereal *tfinal, 
73                                       doublereal *epsiln, 
74                                       doublereal *xlongc, 
75                                       doublereal *erreur, 
76                                       integer *iercod);
77
78
79
80   Standard_EXPORT static int mmbulld_(integer *nbcoln, 
81                                       integer *nblign, 
82                                       doublereal *dtabtr, 
83                                       integer *numcle);
84
85   Standard_EXPORT static int mmcdriv_(integer *ndimen, 
86                                       integer *ncoeff, 
87                                       doublereal *courbe, 
88                                       integer *ideriv, 
89                                       integer *ncofdv, 
90                                       doublereal *crvdrv);
91
92   
93   Standard_EXPORT static int mmcvctx_(integer *ndimen, 
94                               integer *ncofmx, 
95                               integer *nderiv, 
96                               doublereal *ctrtes, 
97                               doublereal *crvres, 
98                               doublereal *tabaux, 
99                               doublereal *xmatri, 
100                               integer *iercod);
101
102   Standard_EXPORT static int mdsptpt_(integer *ndimen, 
103                                       doublereal *point1, 
104                                       doublereal *point2, 
105                                       doublereal *distan);
106
107
108   Standard_EXPORT static int mmaperx_(integer *ncofmx, 
109                                       integer *ndimen, 
110                                       integer *ncoeff, 
111                                       integer *iordre, 
112                                       doublereal *crvjac, 
113                                       integer *ncfnew, 
114                                       doublereal *ycvmax, 
115                                       doublereal *errmax, 
116                                       integer *iercod);
117
118   Standard_EXPORT static int mmdrvck_(integer *ncoeff, 
119                                       integer *ndimen, 
120                                       doublereal *courbe, 
121                                       integer *ideriv, 
122                                       doublereal *tparam, 
123                                       doublereal *pntcrb);
124
125   Standard_EXPORT static int mmeps1_(doublereal *epsilo);
126
127   Standard_EXPORT static int mmfmca8_(integer *ndimen,
128                                       integer *ncoefu,
129                                       integer *ncoefv,
130                                       integer *ndimax, 
131                                       integer *ncfumx, 
132                                       integer *ncfvmx, 
133                                       doublereal *tabini,
134                                       doublereal *tabres);
135
136   Standard_EXPORT static int mmfmcar_(integer *ndimen,
137                                       integer *ncofmx, 
138                                       integer *ncoefu, 
139                                       integer *ncoefv, 
140                                       doublereal *patold, 
141                                       doublereal *upara1, 
142                                       doublereal *upara2, 
143                                       doublereal *vpara1, 
144                                       doublereal *vpara2, 
145                                       doublereal *patnew, 
146                                       integer *iercod);
147
148   Standard_EXPORT static int mmfmtb1_(integer *maxsz1, 
149                                       doublereal *table1, 
150                                       integer *isize1, 
151                                       integer *jsize1, 
152                                       integer *maxsz2, 
153                                       doublereal *table2, 
154                                       integer *isize2,
155                                       integer *jsize2, 
156                                       integer *iercod); 
157
158   Standard_EXPORT static int mmgaus1_(integer *ndimf,
159                                       int (*bfunx) (
160                                                     integer *ninteg, 
161                                                     doublereal *parame, 
162                                                     doublereal *vfunj1, 
163                                                     integer *iercod
164                                                     ), //mmfunj1_() from Smoothing.cxx
165                                       integer *k, 
166                                       doublereal *xd, 
167                                       doublereal *xf, 
168                                       doublereal *saux1, 
169                                       doublereal *saux2, 
170                                       doublereal *somme, 
171                                       integer *niter, 
172                                       integer *iercod);
173
174   Standard_EXPORT static int mmhjcan_(integer *ndimen, 
175                                       integer *ncourb, 
176                                       integer *ncftab, 
177                                       integer *orcont, 
178                                       integer *ncflim, 
179                                       doublereal *tcbold, 
180                                       doublereal *tdecop, 
181                                       doublereal *tcbnew, 
182                                       integer *iercod);
183
184   Standard_EXPORT static int mminltt_(integer *ncolmx,
185                                       integer *nlgnmx, 
186                                       doublereal *tabtri, 
187                                       integer *nbrcol, 
188                                       integer *nbrlgn, 
189                                       doublereal *ajoute, 
190                                       doublereal *epseg, 
191                                       integer *iercod);
192
193   Standard_EXPORT static int mmjaccv_(integer *ncoef, 
194                                       integer *ndim, 
195                                       integer *ider, 
196                                       doublereal *crvlgd,
197                                       doublereal *polaux,
198                                       doublereal *crvcan);
199
200   Standard_EXPORT static int mmpobas_(doublereal *tparam, 
201                                       integer *iordre, 
202                                       integer *ncoeff, 
203                                       integer *nderiv, 
204                                       doublereal *valbas, 
205                                       integer *iercod);
206
207   Standard_EXPORT static int mmmpocur_(integer *ncofmx, 
208                                        integer *ndim, 
209                                        integer *ndeg, 
210                                        doublereal *courbe, 
211                                        doublereal *tparam, 
212                                        doublereal *tabval);
213
214   Standard_EXPORT static int mmposui_(integer *dimmat, 
215                                       integer *nistoc, 
216                                       integer *aposit, 
217                                       integer *posuiv, 
218                                       integer *iercod);
219
220   Standard_EXPORT static int mmresol_(integer *hdimen, 
221                                       integer *gdimen, 
222                                       integer *hnstoc, 
223                                       integer *gnstoc, 
224                                       integer *mnstoc, 
225                                       doublereal *matsyh, 
226                                       doublereal *matsyg, 
227                                       doublereal *vecsyh, 
228                                       doublereal *vecsyg, 
229                                       integer *hposit, 
230                                       integer *hposui, 
231                                       integer *gposit, 
232                                       integer *mmposui, 
233                                       integer *mposit, 
234                                       doublereal *vecsol, 
235                                       integer *iercod);
236
237   Standard_EXPORT static int mmrtptt_(integer *ndglgd, 
238                                       doublereal *rtlegd);
239
240   Standard_EXPORT static int mmsrre2_(doublereal *tparam,
241                                       integer *nbrval, 
242                                       doublereal *tablev, 
243                                       doublereal *epsil, 
244                                       integer *numint, 
245                                       integer *itypen, 
246                                       integer *iercod);
247
248   Standard_EXPORT static int mmtrpjj_(integer *ncofmx, 
249                                       integer *ndimen, 
250                                       integer *ncoeff, 
251                                       doublereal *epsi3d, 
252                                       integer *iordre, 
253                                       doublereal *crvlgd, 
254                                       doublereal *ycvmax, 
255                                       doublereal *errmax, 
256                                       integer *ncfnew);
257
258   Standard_EXPORT static int mmunivt_(integer *ndimen, 
259                                       doublereal *vector, 
260                                       doublereal *vecnrm, 
261                                       doublereal *epsiln, 
262                                       integer *iercod);
263
264   Standard_EXPORT static int mmvncol_(integer *ndimen, 
265                                       doublereal *vecin, 
266                                       doublereal *vecout, 
267                                       integer *iercod);
268
269   Standard_EXPORT static doublereal msc_(integer *ndimen, 
270                                          doublereal *vecte1, 
271                                          doublereal *vecte2);
272
273   Standard_EXPORT static int mvsheld_(integer *n, 
274                                       integer *is, 
275                                       doublereal *dtab, 
276                                       integer *icle);
277
278
279   Standard_EXPORT static int mmarcin_(integer *ndimax, 
280                                       integer *ndim, 
281                                       integer *ncoeff, 
282                                       doublereal *crvold, 
283                                       doublereal *u0, 
284                                       doublereal *u1, 
285                                       doublereal *crvnew, 
286                                       integer *iercod);
287
288
289   Standard_EXPORT static int mmcvinv_(integer *ndimax, 
290                                       integer *ncoef,
291                                       integer *ndim, 
292                                       doublereal *curveo, 
293                                       doublereal *curve);
294
295   Standard_EXPORT static int mmjacan_(integer *ideriv, 
296                                       integer *ndeg, 
297                                       doublereal *poljac, 
298                                       doublereal *polcan);
299
300   Standard_EXPORT static int mmpocrb_(integer *ndimax, 
301                                       integer *ncoeff, 
302                                       doublereal *courbe, 
303                                       integer *ndim, 
304                                       doublereal *tparam, 
305                                       doublereal *pntcrb);
306
307   Standard_EXPORT static int mmmrslwd_(integer *normax, 
308                                        integer *nordre,
309                                        integer *ndim,
310                                        doublereal *amat, 
311                                        doublereal *bmat,
312                                        doublereal *epspiv, 
313                                        doublereal *aaux, 
314                                        doublereal *xmat, 
315                                        integer *iercod);
316
317   Standard_EXPORT static int mmveps3_(doublereal *eps03);
318
319   Standard_EXPORT static doublereal  pow__di (doublereal *x,
320                                               integer *n);
321
322   Standard_EXPORT static doublereal mzsnorm_(integer *ndimen, 
323                                              doublereal *vecteu);
324 };
325
326
327 #endif