Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
ElmerCSC
GitHub Repository: ElmerCSC/elmerfem
Path: blob/devel/ElmerGUI/Application/vtkpost/matc.h
3203 views
1
/*****************************************************************************
2
* *
3
* Elmer, A Finite Element Software for Multiphysical Problems *
4
* *
5
* Copyright 1st April 1995 - , CSC - IT Center for Science Ltd., Finland *
6
* *
7
* This program is free software; you can redistribute it and/or *
8
* modify it under the terms of the GNU General Public License *
9
* as published by the Free Software Foundation; either version 2 *
10
* of the License, or (at your option) any later version. *
11
* *
12
* This program is distributed in the hope that it will be useful, *
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15
* GNU General Public License for more details. *
16
* *
17
* You should have received a copy of the GNU General Public License *
18
* along with this program (in file fem/GPL-2); if not, write to the *
19
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, *
20
* Boston, MA 02110-1301, USA. *
21
* *
22
*****************************************************************************/
23
24
/*****************************************************************************
25
* *
26
* ElmerGUI matc *
27
* *
28
*****************************************************************************
29
* *
30
* Authors: Mikko Lyly, Juha Ruokolainen and Peter Råback *
31
* Email: [email protected] *
32
* Web: http://www.csc.fi/elmer *
33
* Address: CSC - IT Center for Science Ltd. *
34
* Keilaranta 14 *
35
* 02101 Espoo, Finland *
36
* *
37
* Original Date: 15 Mar 2008 *
38
* *
39
*****************************************************************************/
40
41
#ifndef MATC_H
42
#define MATC_H
43
44
#include <QWidget>
45
#include "ui_matc.h"
46
47
#include "mc.h"
48
49
extern "C" VARIABLE *var_temp_new(int,int,int);
50
extern "C" VARIABLE *var_new(char *,int,int,int);
51
extern "C" VARIABLE *var_check(char *);
52
extern "C" VARIABLE *var_temp_new(int,int,int);
53
extern "C" void var_delete(char *);
54
extern "C" char *mtc_domath(const char *);
55
extern "C" void mtc_init(FILE *,FILE *,FILE *);
56
extern "C" void com_init(char *,int,int,VARIABLE *(*)(VARIABLE *),int,int,char*);
57
58
59
class VtkPost;
60
61
extern VtkPost *vtkp;
62
63
class Matc : public QDialog
64
{
65
Q_OBJECT
66
67
public:
68
Matc(QWidget *parent = 0);
69
~Matc();
70
71
Ui::mcDialog ui;
72
73
QString domatc(VtkPost*);
74
75
public slots:
76
bool SetCommand(QString); // Enter matc cmd
77
78
private slots:
79
void okButtonClicked();
80
81
private:
82
static VARIABLE *com_curl(VARIABLE *);
83
static VARIABLE *com_div(VARIABLE *);
84
static VARIABLE *com_grad(VARIABLE *);
85
static VARIABLE *com_display(VARIABLE *);
86
static void grad(VtkPost*, double *, double *);
87
static void div(VtkPost*, double *, double *);
88
static void curl(VtkPost*, double *, double *);
89
};
90
91
#endif // MATC_H
92
93