MASA-0.44.0
masa.h
Go to the documentation of this file.
1 // -*-c++-*-
2 //
3 //-----------------------------------------------------------------------bl-
4 //--------------------------------------------------------------------------
5 //
6 // MASA - Manufactured Analytical Solutions Abstraction Library
7 //
8 // Copyright (C) 2010,2011,2012,2013 The PECOS Development Team
9 //
10 // This library is free software; you can redistribute it and/or
11 // modify it under the terms of the Version 2.1 GNU Lesser General
12 // Public License as published by the Free Software Foundation.
13 //
14 // This library is distributed in the hope that it will be useful,
15 // but WITHOUT ANY WARRANTY; without even the implied warranty of
16 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 // Lesser General Public License for more details.
18 //
19 // You should have received a copy of the GNU Lesser General Public
20 // License along with this library; if not, write to the Free Software
21 // Foundation, Inc. 51 Franklin Street, Fifth Floor,
22 // Boston, MA 02110-1301 USA
23 //
24 //-----------------------------------------------------------------------el-
25 //
26 // masa.h: public functions (C/C++) designed to be exposed in MASA
27 //
28 // $Id$
29 //--------------------------------------------------------------------------
30 //--------------------------------------------------------------------------
31 
32 #ifndef MASA_H_
33 #define MASA_H_
34 
35 //
36 // Library version/build info
37 //
38 
40 
41 #define MASA_MAJOR_VERSION 0
42 #define MASA_MINOR_VERSION 44
43 #define MASA_MICRO_VERSION 0
44 
45 #define MASA_BUILD_USER "nick"
46 #define MASA_BUILD_ARCH "x86_64-unknown-linux-gnu"
47 #define MASA_BUILD_HOST "magus.ices.utexas.edu"
48 #define MASA_BUILD_DATE "2015-04-21 10:22"
49 #define MASA_BUILD_VERSION "4e0d095"
50 
51 #define MASA_LIB_VERSION "0.44.0"
52 #define MASA_LIB_RELEASE "Development Build"
53 
54 #define MASA_CXX "g++"
55 #define MASA_CXXFLAGS "-O0 -fno-unsafe-math-optimizations -Dgnu_compiler"
56 
57 #define MASA_FC "gfortran"
58 #define MASA_FCFLAGS "-g -O2"
59 
61 
62 // This header file contains the public functions designed to be exposed in MASA
63 // What follows is the masa.h doxygen documentation headers
64 
83 #include <math.h>
84 #include <stdlib.h>
85 #include <stdio.h>
86 
87 #ifdef __cplusplus
88 
89 #include <string>
90 #include <vector>
91 #include <limits>
92 #include <iostream>
93 
94 namespace MASA
95 {
96 
97  // -------------------------------------
99  // -------------------------------------
100 
101  template <typename Scalar>
102  int masa_test_default(Scalar input);
103 
117  template <typename Scalar>
118  int masa_init (std::string handle, std::string unique_solution_string);
119 
120  template <typename Scalar>
121  int masa_select_mms(std::string handle);
122 
123  template <typename Scalar>
124  int masa_list_mms ();
125 
126  template <typename Scalar>
128 
129  template <typename Scalar>
130  Scalar pass_func (Scalar (*)(Scalar),Scalar);
131 
132  // --------------------------------
133  // interact with mms variables
134  // --------------------------------
135 
136  template <typename Scalar>
137  int masa_init_param();
138 
139  template <typename Scalar>
140  void masa_set_param(std::string param_name,Scalar new_value);
141 
142  template <typename Scalar>
143  Scalar masa_get_param(std::string param_name);
144 
145  template <typename Scalar>
146  void masa_set_vec(std::string vector_name,std::vector<Scalar>& new_vector);
147 
148  template <typename Scalar>
149  int masa_get_vec(std::string vector_name,std::vector<Scalar>& vector);
150 
151  // --------------------------------
152  // source term(s) -- 1D
153  // --------------------------------
154 
155  template <typename Scalar>
156  Scalar masa_eval_source_t (Scalar); // x
157 
158  template <typename Scalar>
159  Scalar masa_eval_source_t (Scalar,Scalar); // x,t
160 
161  template <typename Scalar>
162  Scalar masa_eval_source_u (Scalar);
163 
164  template <typename Scalar>
165  Scalar masa_eval_source_v (Scalar); // for SA model
166 
167  template <typename Scalar>
168  Scalar masa_eval_source_w (Scalar);
169 
170  template <typename Scalar>
171  Scalar masa_eval_source_e (Scalar);
172 
173  template <typename Scalar>
174  Scalar masa_eval_source_e (Scalar,Scalar (*)(Scalar));
175 
176  template <typename Scalar>
177  Scalar masa_eval_source_rho(Scalar);
178 
179  template <typename Scalar>
180  Scalar masa_eval_source_rho_u(Scalar);
181 
182  template <typename Scalar>
183  Scalar masa_eval_source_rho_v(Scalar);
184 
185  template <typename Scalar>
186  Scalar masa_eval_source_rho_w(Scalar);
187 
188  template <typename Scalar>
189  Scalar masa_eval_source_rho_N(Scalar,Scalar (*)(Scalar));
190 
191  template <typename Scalar>
192  Scalar masa_eval_source_rho_N2(Scalar,Scalar (*)(Scalar));
193 
194  template <typename Scalar>
195  Scalar masa_eval_source_rho_C(Scalar);
196 
197  template <typename Scalar>
198  Scalar masa_eval_source_rho_C3(Scalar);
199 
200  template <typename Scalar>
201  Scalar masa_eval_source_C(Scalar);
202 
203  template <typename Scalar>
204  Scalar masa_eval_source_C3(Scalar);
205 
206  template <typename Scalar>
207  Scalar masa_eval_source_boundary(Scalar);
208 
209  template <typename Scalar>
210  Scalar masa_eval_source_rho_e(Scalar);
211 
212  // --------------------------------
213  // manufactured analytical solution -- 1D
214  // --------------------------------
215 
216  template <typename Scalar>
217  Scalar masa_eval_exact_t (Scalar); // x
218 
219  template <typename Scalar>
220  Scalar masa_eval_exact_t (Scalar,Scalar); // x,t
221 
222  template <typename Scalar>
223  Scalar masa_eval_exact_u (Scalar);
224 
225  template <typename Scalar>
226  Scalar masa_eval_exact_v (Scalar); // for SA model
227 
228  template <typename Scalar>
229  Scalar masa_eval_exact_w (Scalar);
230 
231  template <typename Scalar>
232  Scalar masa_eval_exact_p (Scalar);
233 
234  template <typename Scalar>
235  Scalar masa_eval_exact_rho (Scalar);
236 
237  template <typename Scalar>
238  Scalar masa_eval_exact_rho_N (Scalar);
239 
240  template <typename Scalar>
241  Scalar masa_eval_exact_rho_N2 (Scalar);
242 
243  template <typename Scalar>
244  Scalar masa_eval_exact_rho_C (Scalar);
245 
246  template <typename Scalar>
247  Scalar masa_eval_exact_rho_C3 (Scalar);
248 
249  // --------------------------------
250  // smasa: 1D
251  // --------------------------------
252 
253  template <typename Scalar>
254  Scalar masa_eval_likelyhood (Scalar);
255 
256  template <typename Scalar>
257  Scalar masa_eval_loglikelyhood (Scalar);
258 
259  template <typename Scalar>
260  Scalar masa_eval_prior (Scalar);
261 
262  template <typename Scalar>
263  Scalar masa_eval_posterior (Scalar);
264 
265  template <typename Scalar>
266  Scalar masa_eval_central_moment (int);
267 
268  template <typename Scalar>
269  Scalar masa_eval_posterior_mean();
270 
271  template <typename Scalar>
272  Scalar masa_eval_posterior_variance();
273 
274  // --------------------------------
275  // source term(s) -- 2D
276  // --------------------------------
277 
278  template <typename Scalar>
279  Scalar masa_eval_source_t (Scalar,Scalar,Scalar); //x,y,t
280 
281  template <typename Scalar>
282  Scalar masa_eval_source_f (Scalar,Scalar);
283 
284  template <typename Scalar>
285  Scalar masa_eval_source_u (Scalar,Scalar);
286 
287  template <typename Scalar>
288  Scalar masa_eval_source_v (Scalar,Scalar);
289 
290  template <typename Scalar>
291  Scalar masa_eval_source_w (Scalar,Scalar); // for axisymmetric
292 
293  template <typename Scalar>
294  Scalar masa_eval_source_e (Scalar,Scalar);
295 
296  template <typename Scalar>
297  Scalar masa_eval_source_rho(Scalar,Scalar);
298 
299  template <typename Scalar>
300  Scalar masa_eval_source_rho_u(Scalar,Scalar);
301 
302  template <typename Scalar>
303  Scalar masa_eval_source_rho_v(Scalar,Scalar);
304 
305  template <typename Scalar>
306  Scalar masa_eval_source_rho_w(Scalar,Scalar);
307 
308  template <typename Scalar>
309  Scalar masa_eval_source_rho_e(Scalar,Scalar);
310 
311  template <typename Scalar>
312  Scalar masa_eval_source_nu (Scalar,Scalar);
313 
314  // --------------------------------
315  // manufactured analytical solution -- 2D
316  // --------------------------------
317 
318  template <typename Scalar>
319  Scalar masa_eval_exact_t (Scalar,Scalar,Scalar); //x,y,t
320 
321  template <typename Scalar>
322  Scalar masa_eval_exact_u (Scalar,Scalar);
323 
324  template <typename Scalar>
325  Scalar masa_eval_exact_phi (Scalar,Scalar);
326 
327  template <typename Scalar>
328  Scalar masa_eval_exact_v (Scalar,Scalar);
329 
330  template <typename Scalar>
331  Scalar masa_eval_exact_w (Scalar,Scalar); // for axisymmetric
332 
333  template <typename Scalar>
334  Scalar masa_eval_exact_p (Scalar,Scalar);
335 
336  template <typename Scalar>
337  Scalar masa_eval_exact_rho (Scalar,Scalar);
338 
339  template <typename Scalar>
340  Scalar masa_eval_exact_nu (Scalar,Scalar);
341 
342  template <typename Scalar>
343  Scalar masa_eval_exact_rho_C (Scalar,Scalar);
344 
345  template <typename Scalar>
346  Scalar masa_eval_exact_rho_C3 (Scalar,Scalar);
347 
348  // --------------------------------
349  // source term(s) -- 3D
350  // --------------------------------
351 
352  // masa_eval_source_t(Scalar,Scalar,Scalar) defined under 2D section?
353 
354  template <typename Scalar>
355  Scalar masa_eval_source_u (Scalar,Scalar,Scalar);
356 
357  template <typename Scalar>
358  Scalar masa_eval_source_v (Scalar,Scalar,Scalar);
359 
360  template <typename Scalar>
361  Scalar masa_eval_source_w (Scalar,Scalar,Scalar);
362 
363  template <typename Scalar>
364  Scalar masa_eval_source_e (Scalar,Scalar,Scalar);
365 
366  template <typename Scalar>
367  Scalar masa_eval_source_rho(Scalar,Scalar,Scalar);
368 
369  template <typename Scalar>
370  Scalar masa_eval_source_rho_u(Scalar,Scalar,Scalar);
371 
372  template <typename Scalar>
373  Scalar masa_eval_source_rho_v(Scalar,Scalar,Scalar);
374 
375  template <typename Scalar>
376  Scalar masa_eval_source_rho_w(Scalar,Scalar,Scalar);
377 
378  template <typename Scalar>
379  Scalar masa_eval_source_rho_e(Scalar,Scalar,Scalar);
380 
381  template <typename Scalar>
382  Scalar masa_eval_source_nu (Scalar,Scalar,Scalar);
383 
384  // --------------------------------
385  // manufactured analytical solution -- 3D
386  // --------------------------------
387 
388  template <typename Scalar>
389  Scalar masa_eval_exact_t (Scalar,Scalar,Scalar);
390 
391  template <typename Scalar>
392  Scalar masa_eval_exact_u (Scalar,Scalar,Scalar);
393 
394  template <typename Scalar>
395  Scalar masa_eval_exact_v (Scalar,Scalar,Scalar);
396 
397  template <typename Scalar>
398  Scalar masa_eval_exact_w (Scalar,Scalar,Scalar);
399 
400  template <typename Scalar>
401  Scalar masa_eval_exact_p (Scalar,Scalar,Scalar);
402 
403  template <typename Scalar>
404  Scalar masa_eval_exact_rho (Scalar,Scalar,Scalar);
405 
406  template <typename Scalar>
407  Scalar masa_eval_exact_nu (Scalar,Scalar,Scalar);
408 
409  template <typename Scalar>
410  Scalar masa_eval_exact_rho_C (Scalar,Scalar,Scalar);
411 
412  template <typename Scalar>
413  Scalar masa_eval_exact_rho_C3 (Scalar,Scalar,Scalar);
414 
415 
416  // --------------------------------
417  // source term(s) -- 4D
418  // --------------------------------
419 
420  template <typename Scalar>
421  Scalar masa_eval_source_t (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
422 
423  template <typename Scalar>
424  Scalar masa_eval_source_u (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
425 
426  template <typename Scalar>
427  Scalar masa_eval_source_v (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
428 
429  template <typename Scalar>
430  Scalar masa_eval_source_w (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
431 
432  template <typename Scalar>
433  Scalar masa_eval_source_e (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
434 
435  template <typename Scalar>
436  Scalar masa_eval_source_rho (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
437 
438  template <typename Scalar>
439  Scalar masa_eval_source_rho_u(Scalar,Scalar,Scalar,Scalar); // x,y,z,t
440 
441  template <typename Scalar>
442  Scalar masa_eval_source_rho_v(Scalar,Scalar,Scalar,Scalar); // x,y,z,t
443 
444  template <typename Scalar>
445  Scalar masa_eval_source_rho_w(Scalar,Scalar,Scalar,Scalar); // x,y,z,t
446 
447  template <typename Scalar>
448  Scalar masa_eval_source_rho_e(Scalar,Scalar,Scalar,Scalar); // x,y,z,t
449 
450 
451  // --------------------------------
452  // manufactured analytical solution -- 4D
453  // --------------------------------
454 
455  template <typename Scalar>
456  Scalar masa_eval_exact_t (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
457 
458  template <typename Scalar>
459  Scalar masa_eval_exact_u (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
460 
461  template <typename Scalar>
462  Scalar masa_eval_exact_v (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
463 
464  template <typename Scalar>
465  Scalar masa_eval_exact_w (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
466 
467  template <typename Scalar>
468  Scalar masa_eval_exact_p (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
469 
470  template <typename Scalar>
471  Scalar masa_eval_exact_rho (Scalar,Scalar,Scalar,Scalar); // x,y,z,t
472 
473 
474  // --------------------------------
475  // gradient of analytical solutions
476  // --------------------------------
477 
478  template <typename Scalar>
479  Scalar masa_eval_grad_t (Scalar);
480 
481  template <typename Scalar>
482  Scalar masa_eval_grad_t (Scalar,Scalar,int);
483 
484  template <typename Scalar>
485  Scalar masa_eval_grad_t (Scalar,Scalar,Scalar,int);
486 
487  template <typename Scalar>
488  Scalar masa_eval_grad_t (Scalar,Scalar,Scalar,Scalar,int);
489 
490 
491  template <typename Scalar>
492  Scalar masa_eval_grad_u (Scalar);
493 
494  template <typename Scalar>
495  Scalar masa_eval_grad_u (Scalar,Scalar,int);
496 
497  template <typename Scalar>
498  Scalar masa_eval_grad_u (Scalar,Scalar,Scalar,int);
499 
500  template <typename Scalar>
501  Scalar masa_eval_grad_u (Scalar,Scalar,Scalar,Scalar,int);
502 
503 
504  template <typename Scalar>
505  Scalar masa_eval_grad_v (Scalar);
506 
507  template <typename Scalar>
508  Scalar masa_eval_grad_v (Scalar,Scalar,int);
509 
510  template <typename Scalar>
511  Scalar masa_eval_grad_v (Scalar,Scalar,Scalar,int);
512 
513  template <typename Scalar>
514  Scalar masa_eval_grad_v (Scalar,Scalar,Scalar,Scalar,int);
515 
516 
517  template <typename Scalar>
518  Scalar masa_eval_grad_w (Scalar);
519 
520  template <typename Scalar>
521  Scalar masa_eval_grad_w (Scalar,Scalar,int);
522 
523  template <typename Scalar>
524  Scalar masa_eval_grad_w (Scalar,Scalar,Scalar,int);
525 
526  template <typename Scalar>
527  Scalar masa_eval_grad_w (Scalar,Scalar,Scalar,Scalar,int);
528 
529 
530  template <typename Scalar>
531  Scalar masa_eval_grad_p (Scalar);
532 
533  template <typename Scalar>
534  Scalar masa_eval_grad_p (Scalar,Scalar,int);
535 
536  template <typename Scalar>
537  Scalar masa_eval_grad_p (Scalar,Scalar,Scalar,int);
538 
539  template <typename Scalar>
540  Scalar masa_eval_grad_p (Scalar,Scalar,Scalar,Scalar,int);
541 
542 
543  template <typename Scalar>
544  Scalar masa_eval_grad_rho(Scalar);
545 
546  template <typename Scalar>
547  Scalar masa_eval_grad_rho(Scalar,Scalar,int);
548 
549  template <typename Scalar>
550  Scalar masa_eval_grad_rho(Scalar,Scalar,Scalar,int);
551 
552  template <typename Scalar>
553  Scalar masa_eval_grad_rho(Scalar,Scalar,Scalar,Scalar,int);
554 
555  // --------------------------------
556  // internal masa functions user might want to call
557  // --------------------------------
558  void masa_exit(int); // calls exit() but with exception handling
559  int masa_map (std::string*);
560  int masa_map2(std::string, std::string);
561 
562  template <typename Scalar>
563  int masa_test_poly();
564 
565  // --------------------------------
567  // --------------------------------
568 
569  template <typename Scalar>
570  int masa_getid(void**,std::string);
571 
572  template <typename Scalar>
573  int masa_printid();
574 
575  template <typename Scalar>
576  int masa_display_param();
577 
578  template <typename Scalar>
579  int masa_display_vec();
580 
581  template <typename Scalar>
582  int masa_get_name(std::string*);
583 
584  template <typename Scalar>
585  int masa_get_dimension(int*);
586 
587  template <typename Scalar>
588  int masa_sanity_check();
589 
590  //
591  // Versioning routines
592  // --------------------
593  int masa_version_stdout();
594  int masa_get_numeric_version();
595 
596  // --------------------
597  // MASAshell
598  // --------------------
599 
600  void masa_shell_choose_solution();
601  void masa_shell_print_avail();
602  void masa_shell_choose_solution();
603  void masa_shell_print_avail();
604 
605 
606 } //end MASA namespace
607 
608 #endif // __cplusplus
609 #endif // MASA_H_
610 
611 
612 //--------------------------------------------------------------------------
613 //
614 //
615 // masa.h: contains the public C-interface functions in MASA
616 //
617 //
618 //--------------------------------------------------------------------------
619 
620 #ifdef __cplusplus
621 extern "C" {
622 #endif
623 
627  extern int masa_test_default(double input);
628 
629  // --------------------------------
631  // --------------------------------
632 
649  extern int masa_init (const char* handle, const char* unique_solution_name);
650 
654  extern int masa_purge_default_param();
655 
668  extern int masa_select_mms(const char* handle);
669 
679  extern int masa_list_mms ();
680 
681  // --------------------------------
682  // interact with mms variables
683  // --------------------------------
684 
695  extern int masa_init_param();
696 
709  extern void masa_set_param(const char* param_name,double new_value);
710 
722  extern double masa_get_param(const char* param_name);
723 
737  extern void masa_set_array(const char* vector_name,int *length,double new_array[]);
738 
750  extern int masa_get_array(const char* param_name, int *length, double* array);
751 
752  // --------------------------------
756  // --------------------------------
757 
765  extern double masa_eval_1d_source_t (double x);
766 
776  extern double masa_eval_1d_source_u (double x);
777 
784  extern double masa_eval_1d_source_e (double x);
785 
795  extern double masa_eval_1d_source_rho(double x);
796 
805  extern double masa_eval_1d_source_rho_u (double x);
806 
807 
816  extern double masa_eval_1d_source_rho_e (double x);
817 
827  extern double masa_eval_1d_source_rho_N (double x,double (*)(double));
828 
838  extern double masa_eval_1d_source_rho_N2(double x,double (*)(double));
839 
840  // --------------------------------
842  // --------------------------------
843 
852  extern double masa_eval_1d_exact_t (double x);
853 
861  extern double masa_eval_1d_exact_u (double x);
862 
870  extern double masa_eval_1d_exact_p (double x);
871 
877  extern double masa_eval_1d_exact_rho (double x);
878 
885  extern double masa_eval_1d_exact_rho_N (double x);
886 
893  extern double masa_eval_1d_exact_rho_N2 (double x);
894 
895  // --------------------------------
897  // --------------------------------
898 
904  extern double masa_eval_2d_source_t (double x,double y);
905 
911  extern double masa_eval_2d_source_u (double x,double y);
912 
918  extern double masa_eval_2d_source_v (double x,double y);
919 
925  extern double masa_eval_2d_source_e (double x,double y);
926 
932  extern double masa_eval_2d_source_rho(double x,double y);
933 
939  extern double masa_eval_2d_source_rho_u(double x,double y);
940 
945  extern double masa_eval_2d_source_rho_v(double x,double y);
946 
951  extern double masa_eval_2d_source_rho_w(double x,double y);
952 
957  extern double masa_eval_2d_source_rho_e(double x,double y);
958 
962  extern double masa_eval_2d_source_f(double x,double y);
963 
964  // --------------------------------
968  // --------------------------------
969 
974  extern double masa_eval_2d_exact_t (double x,double y);
975 
981  extern double masa_eval_2d_exact_u (double x,double y);
982 
988  extern double masa_eval_2d_exact_v (double x,double y);
989 
995  extern double masa_eval_2d_exact_p (double x,double y);
996 
1002  extern double masa_eval_2d_exact_rho (double x,double y);
1003 
1009  extern double masa_eval_2d_exact_phi (double x,double y);
1010 
1011  // --------------------------------
1015  // --------------------------------
1016 
1022  extern double masa_eval_3d_source_t (double x,double y,double z);
1023 
1029  extern double masa_eval_3d_source_u (double x,double y,double z);
1030 
1036  extern double masa_eval_3d_source_v (double x,double y,double z);
1037 
1043  extern double masa_eval_3d_source_w (double x,double y,double z);
1044 
1050  extern double masa_eval_3d_source_e (double x,double y,double z);
1051 
1057  extern double masa_eval_3d_source_rho(double x,double y,double z);
1058 
1064  extern double masa_eval_3d_source_rho_u(double x,double y,double z);
1065 
1071  extern double masa_eval_3d_source_rho_v(double x,double y,double z);
1072 
1078  extern double masa_eval_3d_source_rho_w(double x,double y,double z);
1079 
1085  extern double masa_eval_3d_source_rho_e(double x,double y,double z);
1086 
1087  // --------------------------------
1091  // --------------------------------
1092 
1098  extern double masa_eval_3d_exact_t (double x,double y,double z);
1099 
1105  extern double masa_eval_3d_exact_u (double x,double y,double z);
1106 
1112  extern double masa_eval_3d_exact_v (double x,double y,double z);
1113 
1119  extern double masa_eval_3d_exact_w (double x,double y,double z);
1120 
1126  extern double masa_eval_3d_exact_p (double x,double y,double z);
1127 
1133  extern double masa_eval_3d_exact_rho (double x,double y,double z);
1134 
1135  // --------------------------------
1139  // --------------------------------
1140 
1141  //
1142  // u-component
1143  //
1144 
1150  extern double masa_eval_1d_grad_u(double x);
1151 
1157  extern double masa_eval_2d_grad_u(double x,double y,int direction);
1158 
1164  extern double masa_eval_3d_grad_u(double x,double y,double z,int direction);
1165 
1166  //
1167  // v-component
1168  //
1169 
1175  extern double masa_eval_2d_grad_v(double x,double y,int direction);
1176 
1182  extern double masa_eval_3d_grad_v(double x,double y,double z,int direction);
1183 
1184  //
1185  // w-component
1186  //
1187 
1193  extern double masa_eval_3d_grad_w(double x,double y,double z,int direction);
1194 
1195 
1196  //
1197  // pressure
1198  //
1199 
1205  extern double masa_eval_1d_grad_p(double x);
1206 
1212  extern double masa_eval_2d_grad_p(double x,double y,int direction);
1213 
1219  extern double masa_eval_3d_grad_p(double x,double y,double z,int direction);
1220 
1221  //
1222  // density (rho)
1223  //
1224 
1230  extern double masa_eval_1d_grad_rho(double x);
1231 
1237  extern double masa_eval_2d_grad_rho(double x,double y,int direction);
1238 
1244  extern double masa_eval_3d_grad_rho(double x,double y,double z,int direction);
1245 
1246 
1247  // --------------------------------
1251  // --------------------------------
1252 
1257  extern int masa_get_name(char* name);
1258 
1263  extern int masa_get_dimension(int* dimension);
1264 
1269  extern int masa_display_param();
1270 
1275  extern int masa_display_array();
1276 
1284  extern int masa_sanity_check();
1285 
1286 #ifdef __cplusplus
1287 }
1288 #endif
1289 
double masa_eval_3d_source_u(double x, double y, double z)
double masa_eval_2d_exact_t(double x, double y)
int masa_get_dimension(int *dimension)
double masa_eval_2d_source_rho_v(double x, double y)
double masa_eval_2d_grad_v(double x, double y, int direction)
void masa_set_array(const char *vector_name, int *length, double new_array[])
double masa_eval_3d_grad_u(double x, double y, double z, int direction)
double masa_eval_1d_source_rho(double x)
double masa_eval_1d_source_rho_N2(double x, double(*)(double))
double masa_eval_1d_grad_rho(double x)
int masa_list_mms()
double masa_eval_3d_source_v(double x, double y, double z)
int masa_purge_default_param()
double masa_eval_3d_source_e(double x, double y, double z)
double masa_eval_3d_source_w(double x, double y, double z)
double masa_eval_2d_source_v(double x, double y)
double masa_eval_2d_source_u(double x, double y)
int masa_display_array()
int masa_get_array(const char *param_name, int *length, double *array)
double masa_eval_2d_exact_p(double x, double y)
void masa_set_param(const char *param_name, double new_value)
double masa_eval_1d_exact_u(double x)
int masa_sanity_check()
double masa_eval_2d_source_rho_e(double x, double y)
double masa_eval_2d_grad_u(double x, double y, int direction)
double masa_eval_1d_grad_u(double x)
double masa_eval_1d_source_rho_e(double x)
double masa_eval_2d_source_rho_w(double x, double y)
double masa_eval_2d_grad_rho(double x, double y, int direction)
double masa_eval_1d_source_e(double x)
double masa_eval_3d_grad_w(double x, double y, double z, int direction)
double masa_eval_1d_source_t(double x)
double masa_eval_1d_source_rho_u(double x)
double masa_eval_2d_grad_p(double x, double y, int direction)
double masa_eval_1d_exact_t(double x)
double masa_eval_3d_exact_w(double x, double y, double z)
double masa_eval_1d_exact_rho_N2(double x)
int masa_init(const char *handle, const char *unique_solution_name)
double masa_eval_2d_source_f(double x, double y)
double masa_eval_2d_source_t(double x, double y)
int masa_select_mms(const char *handle)
double masa_eval_2d_exact_phi(double x, double y)
int masa_init_param()
double masa_eval_3d_exact_u(double x, double y, double z)
double masa_eval_3d_exact_rho(double x, double y, double z)
double masa_eval_3d_grad_v(double x, double y, double z, int direction)
double masa_eval_3d_source_rho_v(double x, double y, double z)
double masa_eval_1d_exact_rho_N(double x)
int masa_get_name(char *name)
double masa_eval_2d_exact_v(double x, double y)
double masa_eval_3d_grad_rho(double x, double y, double z, int direction)
double masa_eval_3d_source_rho_u(double x, double y, double z)
double masa_eval_2d_source_rho(double x, double y)
double masa_eval_1d_grad_p(double x)
int masa_display_param()
double masa_eval_2d_source_e(double x, double y)
double masa_eval_1d_exact_rho(double x)
double masa_eval_1d_source_u(double x)
int masa_test_default(double input)
double masa_eval_2d_exact_u(double x, double y)
double masa_eval_2d_exact_rho(double x, double y)
double masa_eval_3d_exact_p(double x, double y, double z)
double masa_eval_2d_source_rho_u(double x, double y)
double masa_eval_3d_grad_p(double x, double y, double z, int direction)
double masa_eval_3d_source_t(double x, double y, double z)
double masa_eval_3d_exact_v(double x, double y, double z)
double masa_eval_3d_source_rho_w(double x, double y, double z)
double masa_eval_1d_exact_p(double x)
double masa_get_param(const char *param_name)
double masa_eval_3d_source_rho(double x, double y, double z)
double masa_eval_3d_exact_t(double x, double y, double z)
double masa_eval_1d_source_rho_N(double x, double(*)(double))
double masa_eval_3d_source_rho_e(double x, double y, double z)

Generated on Tue Apr 21 2015 10:22:49 for MASA-0.44.0 by  doxygen 1.8.5