source: issm/trunk/src/c/objects/Model.h@ 3775

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

Created include.h header file

File size: 3.1 KB
RevLine 
[1843]1/*! \file Model.h
2 * \brief: header file for model object
3 */
4
5#ifndef _MODEL_H_
6#define _MODEL_H_
7
[3637]8/*Headers:*/
9/*{{{1*/
[3775]10#include "../include/include.h"
[1843]11struct FemModel;
[1881]12class DataSet;
[3637]13/*}}}*/
[1881]14
[1843]15class Model{
16
17 private:
18
[1881]19 /*femmodels for each formulation: dynamic, can have as many*/
20 DataSet* femmodels;
[1843]21
[1881]22 /*active femmodel: points to a FemModel in the femmodels dataset*/
[1843]23 FemModel* active;
24
25 public:
26
27 Model();
28 ~Model();
29
30 void Echo();
31 void DeepEcho();
32
[1881]33 void AddFormulation(ConstDataHandle MODEL, int analysis_type,int sub_analysis_type);
[1886]34 void AddFormulation(ConstDataHandle MODEL, int analysis_type);
[1881]35
36 /*all overloaded forms of the FindParam routine: */
[3732]37 int FindParam(bool* pparameter,int enum_type);
[3673]38 int FindParam(int* pparameter,int enum_type);
39 int FindParam(double* pparameter,int enum_type);
40 int FindParam(double** pparameter,int* pM,int* pN,int enum_type);
[3732]41 int FindParam(double** pparameter,int* pM,int enum_type);
[3673]42 int FindParam(char** pparameter,int enum_type);
[1881]43
[3751]44 int FindParamByAnalysisAndSub(bool* pparameter,int enum_type,int analysis_type,int sub_analysis_type);
45 int FindParamByAnalysisAndSub(int* pparameter,int enum_type,int analysis_type,int sub_analysis_type);
46 int FindParamByAnalysisAndSub(double* pparameter,int enum_type,int analysis_type,int sub_analysis_type);
47 int FindParamByAnalysisAndSub(double** pparameter,int* pM, int enum_type,int analysis_type,int sub_analysis_type);
48 int FindParamByAnalysisAndSub(double** pparameter,int* pM, int* pN,int enum_type,int analysis_type,int sub_analysis_type);
49 int FindParamByAnalysisAndSub(char** pparameter,int enum_type,int analysis_type,int sub_analysis_type);
[1881]50
[3751]51 int FindParamByAnalysis(bool* pparameter,int enum_type,int analysis_type);
52 int FindParamByAnalysis(int* pparameter,int enum_type,int analysis_type);
53 int FindParamByAnalysis(double* pparameter,int enum_type,int analysis_type);
54 int FindParamByAnalysis(double** pparameter,int* pM,int enum_type,int analysis_type);
55 int FindParamByAnalysis(double** pparameter,int* pM,int* pN,int enum_type,int analysis_type);
56 int FindParamByAnalysis(char** pparameter,int enum_type,int analysis_type);
[1881]57
58 FemModel* GetFormulation(int analysis_type,int sub_analysis_type);
59 FemModel* GetFormulation(int analysis_type);
60
[3751]61 void UpdateInputsFromVector(Vec vector, int name, int type);
[3703]62 void UpdateInputsFromVector(double* vector, int name, int type);
[3751]63 void UpdateInputsFromVector(int* vector, int name, int type);
64 void UpdateInputsFromVector(bool* vector, int name, int type);
[3732]65 void UpdateInputsFromConstant(double constant, int name);
66 void UpdateInputsFromConstant(int constant, int name);
67 void UpdateInputsFromConstant(bool constant, int name);
[3703]68 void UpdateInputsFromSolution(double* solution, int analysis_type, int sub_analysis_type);
[3732]69 void UpdateFromDakota(double* variables,char** variables_descriptors,int numvariables,DataSet* parameters, double* qmu_part,int qmu_npart);
[3703]70
[3732]71
[1881]72 FemModel* GetActiveFormulation();
73 void* SetActiveFormulation(FemModel* femmodel);
74
[1843]75};
76#endif /* _MODEL_H */
Note: See TracBrowser for help on using the repository browser.