1 // GetDP - Copyright (C) 1997-2021 P. Dular and C. Geuzaine, University of Liege 2 // 3 // See the LICENSE.txt file for license information. Please report all 4 // issues on https://gitlab.onelab.info/getdp/getdp/issues. 5 6 #ifndef CAL_VALUE_H 7 #define CAL_VALUE_H 8 9 #include <string> 10 #include <vector> 11 #include "ProData.h" 12 13 void Cal_CopyValue (struct Value *V1, struct Value *R); 14 void Cal_ZeroValue (struct Value *V1); 15 16 void Cal_AddValue (struct Value *V1, struct Value *V2, struct Value *R) ; 17 void Cal_SubstractValue (struct Value *V1, struct Value *V2, struct Value *R) ; 18 void Cal_ProductValue (struct Value *V1, struct Value *V2, struct Value *R) ; 19 void Cal_SqrtValue (struct Value *V1, struct Value *R) ; 20 void Cal_DivideValue (struct Value *V1, struct Value *V2, struct Value *R) ; 21 void Cal_ModuloValue (struct Value *V1, struct Value *V2, struct Value *R) ; 22 void Cal_CrossProductValue (struct Value *V1, struct Value *V2, struct Value *R) ; 23 void Cal_PowerValue (struct Value *V1, struct Value *V2, struct Value *R) ; 24 void Cal_RotateValue (struct Value *V1, struct Value *V2, struct Value *R); 25 void Cal_InvertValue (struct Value *V1, struct Value *R); 26 void Cal_DetValue (struct Value *V1, struct Value *R); 27 void Cal_TransposeValue (struct Value *V1, struct Value *R); 28 void Cal_TraceValue (struct Value *V1, struct Value *R); 29 30 void Cal_LessValue (struct Value *V1, struct Value *V2, struct Value *R) ; 31 void Cal_GreaterValue (struct Value *V1, struct Value *V2, struct Value *R) ; 32 void Cal_LessOrEqualValue (struct Value *V1, struct Value *V2, struct Value *R) ; 33 void Cal_GreaterOrEqualValue (struct Value *V1, struct Value *V2, struct Value *R) ; 34 void Cal_EqualValue (struct Value *V1, struct Value *V2, struct Value *R) ; 35 void Cal_NotEqualValue (struct Value *V1, struct Value *V2, struct Value *R) ; 36 void Cal_ApproxEqualValue (struct Value *V1, struct Value *V2, struct Value *R) ; 37 void Cal_AndValue (struct Value *V1, struct Value *V2, struct Value *R) ; 38 void Cal_OrValue (struct Value *V1, struct Value *V2, struct Value *R) ; 39 void Cal_NegValue (struct Value *V1) ; 40 void Cal_NotValue (struct Value *V1) ; 41 42 void Cal_SetHarmonicValue (struct Value *R) ; 43 void Cal_SetZeroHarmonicValue(struct Value *R, int Save_NbrHar) ; 44 void Cal_MultValue (struct Value * V1, double d, struct Value * R) ; 45 void Cal_AddMultValue (struct Value *V1, struct Value *V2, double d, struct Value *R) ; 46 void Cal_AddMultValue2 (struct Value *V1, double d1, struct Value *V2, double d2) ; 47 48 void Cal_ComplexProduct (double V1[], double V2[], double P[]); 49 void Cal_ComplexDivision (double V1[], double V2[], double P[]); 50 void Cal_ComplexInvert (double V1[], double P[]); 51 52 std::string Print_Value_ToString(struct Value *A); 53 void Print_Value (struct Value *A, FILE *fp=0); 54 void Show_Value (struct Value *A); 55 56 void Export_Value(struct Value *A, std::vector<double> &out, List_T *harmonics=0, 57 bool append=true); 58 59 #endif 60