Changeset 4098


Ignore:
Timestamp:
06/21/10 16:19:43 (15 years ago)
Author:
Eric.Larour
Message:

Moved ControlConstrain to InputControlConstrain

Location:
issm/trunk/src/mex
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/mex/InputControlConstrain/InputControlConstrain.cpp

    r4097 r4098  
    1 /*\file ControlConstrain.c
    2  *\brief: constrain updated parameters during inverse control run
    3  */
     1/*\file InputControlConstrain.c
     2*\brief: update elements properties using an input  vector
     3*/
    44
    5 #include "./ControlConstrain.h"
     5#include "./InputControlConstrain.h"
    66
    77void mexFunction( int nlhs, mxArray* plhs[], int nrhs, const mxArray* prhs[]){
    88
    9         /*diverse: */
    10         int   noerr=1;
     9/*diverse: */
     10int         noerr             = 1;
    1111
    12         /*input datasets: */
    13         double*  p_g=NULL;
    14         double   cm_min;
    15         double   cm_max;
    16         int      control_type=NULL;
    17         int      gsize;
    18         Parameters* parameters=NULL;
     12/*input datasets: */
     13DataSet    *elements          = NULL;
     14DataSet    *nodes             = NULL;
     15DataSet    *vertices          = NULL;
     16DataSet    *loads             = NULL;
     17DataSet    *materials         = NULL;
     18Parameters *parameters        = NULL;
     19int         control_type;
     20double      cm_min;
     21double      cm_max;
    1922
    20         /*Boot module: */
    21         MODULEBOOT();
     23/*Boot module: */
     24MODULEBOOT();
    2225
    23         /*checks on arguments on the matlab side: */
    24         CheckNumMatlabArguments(nlhs,NLHS,nrhs,NRHS,__FUNCT__,&ControlConstrainUsage);
     26/*checks on arguments on the matlab side: */
     27CheckNumMatlabArguments(nlhs,NLHS,nrhs,NRHS,__FUNCT__,&InputControlConstrainUsage);
    2528
    26         /*Input datasets: */
    27         FetchData(&p_g,&gsize,PG);
    28         FetchParams(&parameters,PARAMETERS);
     29/*Input datasets: */
     30FetchData(&elements,ELEMENTSIN);
     31FetchData(&nodes,NODESIN);
     32FetchData(&vertices,VERTICESIN);
     33FetchData(&loads,LOADSIN);
     34FetchData(&materials,MATERIALSIN);
     35FetchParams(&parameters,PARAMETERSIN);
     36FetchData(&control_type,CONTROLTYPE);
     37FetchData(&cm_min,CMMIN);
     38FetchData(&cm_max,CMMAX);
    2939
    30         parameters->FindParam(&cm_min,CmMinEnum);
    31         parameters->FindParam(&cm_max,CmMaxEnum);
    32         parameters->FindParam(&control_type,ControlTypeEnum);
     40/*call "x" code layer*/
     41InputControlConstrainx(elements,nodes,vertices,loads, materials,parameters,control_type,cm_min,cm_max);
    3342
    34         /*!Call core code: */
    35         ControlConstrainx(p_g,gsize,cm_min,cm_max,control_type);
     43/*write output datasets: */
     44WriteData(ELEMENTS,elements);
     45WriteData(NODES,nodes);
     46WriteData(VERTICES,vertices);
     47WriteData(LOADS,loads);
     48WriteData(MATERIALS,materials);
     49WriteParams(PARAMETERS,parameters);
    3650
    37         /*write output : */
    38         WriteData(PGOUT,p_g,gsize);
     51/*Free ressources: */
     52delete elements;
     53delete nodes;
     54delete vertices;
     55delete loads;
     56delete materials;
     57delete parameters;
    3958
    40         /*Free ressources: */
    41         delete parameters;
    42 
    43         /*end module: */
    44         MODULEEND();
     59/*end module: */
     60MODULEEND();
    4561}
    4662
    47 void ControlConstrainUsage(void)
     63void InputControlConstrainUsage(void)
    4864{
    4965        _printf_("\n");
    50         _printf_("   usage: [p_g] = %s(p_g,parameters);\n",__FUNCT__);
     66        _printf_("   usage: [elements,nodes,vertices,loads,materials,parameters] = %s(elements,nodes,vertices,loads,materials,parameters,control_type,cm_min,cm_max);\n",__FUNCT__);
    5167        _printf_("\n");
    5268}
  • issm/trunk/src/mex/InputControlConstrain/InputControlConstrain.h

    r4097 r4098  
    11/*
    2         ControlConstrain.h
     2        InputControlConstrain.h
    33*/
    44
    5 
    6 #ifndef _CONTROLCONSTRAIN_H
    7 #define _CONTROLCONSTRAIN_H
     5#ifndef _INPUTCONTROLCONSTRAIN_H
     6#define _INPUTCONTROLCONSTRAIN_H
    87
    98/* local prototypes: */
    10 void ControlConstrainUsage(void);
     9void InputControlConstrainUsage(void);
    1110
    1211#include "../../c/modules/modules.h"
     
    1615
    1716#undef __FUNCT__
    18 #define __FUNCT__  "ControlConstrain"
     17#define __FUNCT__  "InputControlConstrain"
    1918
    2019/* serial input macros: */
    21 #define PG (mxArray*)prhs[0]
    22 #define PARAMETERS (mxArray*)prhs[1]
     20#define ELEMENTSIN (mxArray*)prhs[0]
     21#define NODESIN (mxArray*)prhs[1]
     22#define VERTICESIN (mxArray*)prhs[2]
     23#define LOADSIN (mxArray*)prhs[3]
     24#define MATERIALSIN (mxArray*)prhs[4]
     25#define PARAMETERSIN (mxArray*)prhs[5]
     26#define CONTROLTYPE (mxArray*)prhs[6]
     27#define CMMIN (mxArray*)prhs[7]
     28#define CMMAX (mxArray*)prhs[8]
    2329
    2430/* serial output macros: */
    25 #define PGOUT (mxArray**)&plhs[0]
     31#define ELEMENTS (mxArray**)&plhs[0]
     32#define NODES (mxArray**)&plhs[1]
     33#define VERTICES (mxArray**)&plhs[2]
     34#define LOADS (mxArray**)&plhs[3]
     35#define MATERIALS (mxArray**)&plhs[4]
     36#define PARAMETERS (mxArray**)&plhs[5]
    2637
    2738/* serial arg counts: */
    2839#undef NLHS
    29 #define NLHS  1
     40#define NLHS  6
    3041#undef NRHS
    31 #define NRHS  2
     42#define NRHS  9
    3243
     44#endif  /* _INPUTCONTROLCONSTRAIN_H */
    3345
    34 #endif  /* _CONTROLCONSTRAIN_H */
    35 
    36 
    37 
  • issm/trunk/src/mex/InputDepthAverage/InputDepthAverage.cpp

    r4095 r4098  
    6262{
    6363        _printf_("\n");
    64         _printf_("   usage: [elements,nodes,vertices,loads,materials,parameters] = %s(elements,nodes,vertices,loads,materials,parameters,name_enum);\n",__FUNCT__);
     64        _printf_("   usage: [elements,nodes,vertices,loads,materials,parameters] = %s(elements,nodes,vertices,loads,materials,parameters,enum_type,average_enum_type);\n",__FUNCT__);
    6565        _printf_("\n");
    6666}
Note: See TracChangeset for help on using the changeset viewer.