source: issm/trunk/src/mex/InputControlConstrain/InputControlConstrain.cpp@ 4218

Last change on this file since 4218 was 4218, checked in by Eric.Larour, 15 years ago

New class Materials

File size: 1.8 KB
Line 
1/*\file InputControlConstrain.c
2*\brief: update elements properties using an input vector
3*/
4
5#include "./InputControlConstrain.h"
6
7void mexFunction( int nlhs, mxArray* plhs[], int nrhs, const mxArray* prhs[]){
8
9/*diverse: */
10int noerr = 1;
11
12/*input datasets: */
13Elements* elements = NULL;
14Nodes *nodes = NULL;
15Vertices *vertices = NULL;
16Loads *loads = NULL;
17Materials *materials = NULL;
18Parameters *parameters = NULL;
19int control_type;
20double cm_min;
21double cm_max;
22
23/*Boot module: */
24MODULEBOOT();
25
26/*checks on arguments on the matlab side: */
27CheckNumMatlabArguments(nlhs,NLHS,nrhs,NRHS,__FUNCT__,&InputControlConstrainUsage);
28
29/*Input datasets: */
30FetchData((DataSet**)&elements,ELEMENTSIN);
31FetchData((DataSet**)&nodes,NODESIN);
32FetchData((DataSet**)&vertices,VERTICESIN);
33FetchData((DataSet**)&loads,LOADSIN);
34FetchData((DataSet**)&materials,MATERIALSIN);
35FetchParams(&parameters,PARAMETERSIN);
36FetchData(&control_type,CONTROLTYPE);
37FetchData(&cm_min,CMMIN);
38FetchData(&cm_max,CMMAX);
39
40/*call "x" code layer*/
41InputControlConstrainx(elements,nodes,vertices,loads, materials,parameters,control_type,cm_min,cm_max);
42
43/*write output datasets: */
44WriteData(ELEMENTS,elements);
45WriteData(NODES,nodes);
46WriteData(VERTICES,vertices);
47WriteData(LOADS,loads);
48WriteData(MATERIALS,materials);
49WriteParams(PARAMETERS,parameters);
50
51/*Free ressources: */
52delete elements;
53delete nodes;
54delete vertices;
55delete loads;
56delete materials;
57delete parameters;
58
59/*end module: */
60MODULEEND();
61}
62
63void InputControlConstrainUsage(void)
64{
65 _printf_("\n");
66 _printf_(" usage: [elements,nodes,vertices,loads,materials,parameters] = %s(elements,nodes,vertices,loads,materials,parameters,control_type,cm_min,cm_max);\n",__FUNCT__);
67 _printf_("\n");
68}
Note: See TracBrowser for help on using the repository browser.