source: issm/trunk-jpl/src/c/classes/Inputs/DoubleArrayInput.h@ 19725

Last change on this file since 19725 was 19725, checked in by Mathieu Morlighem, 9 years ago

CHG: working on the RHS of Hydro Aleah's model

File size: 3.7 KB
RevLine 
[19554]1/*! \file DoubleArrayInput.h
2 * \brief: header file for vector type input object
3 */
4
5#ifndef _DOUBLE_ARRAY_INPUT_H_
6#define _DOUBLE_ARRAY_INPUT_H_
7
8/*Headers:*/
9/*{{{*/
10#include "./Input.h"
11/*}}}*/
12
13class DoubleArrayInput: public Input{
14
15 public:
16 int enum_type;
17 IssmDouble* values; /*vector*/
18 int m; /*size of vector*/
19
20 /*DoubleArrayInput constructors, destructors: {{{*/
21 DoubleArrayInput();
22 DoubleArrayInput(int enum_type,IssmDouble* values, int m);
23 ~DoubleArrayInput();
24 /*}}}*/
25 /*Object virtual functions definitions:{{{ */
26 void Echo();
27 void DeepEcho();
28 int Id();
29 int ObjectEnum();
30 Object* copy();
31 void Marshall(char** pmarshalled_data,int* pmarshalled_data_size, int marshall_direction);
32 /*}}}*/
33 /*DoubleArrayInput management: {{{*/
34 int InstanceEnum();
35 Input* SpawnTriaInput(int index1,int index2,int index3){_error_("not implemented yet");};
36 Input* SpawnSegInput(int index1,int index2){_error_("not implemented yet");};
37 Input* PointwiseDivide(Input* inputB){_error_("not implemented yet");};
38 Input* PointwiseMin(Input* inputB){_error_("not implemented yet");};
39 Input* PointwiseMax(Input* inputB){_error_("not implemented yet");};
40 int GetResultInterpolation(void){return P0ArrayEnum;};
41 int GetResultNumberOfNodes(void){return 1;};
42 int GetResultArraySize(void){return m;};
43 void ResultToMatrix(IssmDouble* values,int ncols,int sid);
44 void Configure(Parameters* parameters);
45 void GetValues(IssmDouble** pvalues,int* pm);
46 /*}}}*/
47 /*numerics: {{{*/
48 void GetInputValue(bool* pvalue){_error_("not implemented yet");};
49 void GetInputValue(int* pvalue){_error_("not implemented yet");};
50 void GetInputValue(IssmDouble* pvalue){_error_("not implemented yet");};
51 void GetInputValue(IssmDouble* pvalue,Gauss* gauss){_error_("not implemented yet");};
52 void GetInputValue(IssmDouble* pvalue,Gauss* gauss,IssmDouble time){_error_("not implemented yet");};
53 void GetInputValue(IssmDouble* pvalue,Gauss* gauss ,int index){_error_("not implemented yet");};
54 void GetInputDerivativeValue(IssmDouble* derivativevalues, IssmDouble* xyz_list,Gauss* gauss){_error_("not implemented yet");};
55 void GetInputAverage(IssmDouble* pvalue){_error_("not implemented yet");};
[19725]56 void GetInputDerivativeAverageValue(IssmDouble* derivativevalues, IssmDouble* xyz_list){_error_("not implemented yet");};
[19554]57 void GetInputAllTimeAverages(IssmDouble** pvalues,IssmDouble** ptimes, int* pnumtimes){_error_("not implemented yet");};
58 void GetInputUpToCurrentTimeAverages(IssmDouble** pvalues, IssmDouble** ptimes, int* pnumtimes, IssmDouble currenttime){_error_("not implemented yet");};
59 void SquareMin(IssmDouble* psquaremin,Parameters* parameters){_error_("not implemented yet");};
60 void ConstrainMin(IssmDouble minimum){_error_("not implemented yet");};
61 void Set(IssmDouble setvalue){_error_("Set not implemented yet");};
62 void Scale(IssmDouble scale_factor){_error_("not implemented yet");};
63 void AXPY(Input* xinput,IssmDouble scalar){_error_("not implemented yet");};
64 void Constrain(IssmDouble cm_min, IssmDouble cm_max){_error_("not implemented yet");};
65 void ChangeEnum(int newenumtype);
66 IssmDouble InfinityNorm(void){_error_("not implemented yet");};
67 IssmDouble Max(void){_error_("not implemented yet");};
68 IssmDouble MaxAbs(void){_error_("not implemented yet");};
69 IssmDouble Min(void){_error_("not implemented yet");};
70 IssmDouble MinAbs(void){_error_("not implemented yet");};
71 void Extrude(int start){_error_("not supported yet");};
72 void VerticallyIntegrate(Input* thickness_input){_error_("not implemented yet");};
73 void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist){_error_("not implemented yet");};
74 /*}}}*/
75
76};
77#endif /* _DOUBLE_ARRAY_INPUT_H */
Note: See TracBrowser for help on using the repository browser.