📄 getdp.tab.c
字号:
#define tLESSOREQUAL 494#define tGREATEROREQUAL 495#define tLESSLESS 496#define tGREATERGREATER 497#define tCROSSPRODUCT 498#define UNARYPREC 499#define tSHOW 500#line 1 "GetDP.y"/* $Id: GetDP.tab.c,v 1.104 2006/03/10 18:09:23 geuzaine Exp $ *//* * Copyright (C) 1997-2006 P. Dular, C. Geuzaine * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA. * * Please report all bugs and problems to <getdp@geuz.org>. * * Contributor(s): * Ruth Sabariego * Johan Gyselinck *//* Modifs a faire: Patrick: definir des structures avec valeurs par defaut, e.g. BasisFunction_D = ... (dans un fichier a part). Christophe: introduire les listes au sein des expressions (comme c'est fait dans les expression-cst), afin de gerer les vecteurs, tenseurs, etc., directement, et pas par l'intermediaire d'une fonction de creation. */#include <stdio.h>#include <stdlib.h>#include <stdarg.h>#include <string.h>#include <math.h>#include <time.h>#include "Data_Passive.h"#include "Data_Active.h"#include "Data_DefineE.h"#include "Malloc.h"#include "Tools.h"#include "Init_Problem.h"#include "Print_ProblemStructure.h"#include "BF_Function.h"#include "Quadrature.h"#include "Cal_Value.h"#include "Parser.h"#include "Message.h"#include "Magic.h"void hack_fsetpos(void) ;void hack_fsetpos_printf(void) ;void Check_NameOfStructNotExist(char * Struct, List_T * List_L, void * data, int (*fcmp)(const void *a, const void *b)) ;int Add_Group(struct Group * Group_P, char * Name, int Flag_Plus, int Num_Index) ;int Add_Group_2(struct Group * Group_P, char * Name, int Flag_Add, int Flag_Plus, int Num_Index1, int Num_Index2) ;int Num_Group(struct Group * Group_P, char * Name, int Num_Group) ;int Add_Expression(struct Expression * Expression_P, char * Name, int Flag_Plus) ;void Pro_DefineQuantityIndex(List_T * WholeQuantity_L,int DefineQuantityIndexEqu, int * NbrQuantityIndex, int ** QuantityIndexTable, int ** QuantityTraceGroupIndexTable) ;void Pro_DefineQuantityIndex_1(List_T * WholeQuantity_L, int TraceGroupIndex) ;void Help(char *topic) ;int Print_ListOfDouble(char *format, List_T *list, char *buffer) ;void yyerror(char *s) ;void vyyerror(char *fmt, ...) ;int yylex();extern FILE *yyin ;extern long int yylinenum ;extern char yyname[MAX_FILE_NAME_LENGTH], yyincludename[MAX_FILE_NAME_LENGTH] ;extern int yycolnum, yyincludenum ;extern char *yytext ;extern int ErrorLevel, InteractiveLevel ;extern struct Problem Problem_S ;extern struct PostProcessing InteractivePostProcessing_S ;extern struct PostSubOperation InteractivePostSubOperation_S ;extern int InteractiveCompute ;List_T * ConstantTable_L, * ListDummy_L ;List_T * ListOfInt_L, * ListOfTwoInt_L ;List_T * ListOfPointer_L, * ListOfPointer2_L, * ListOfChar_L ;List_T * Current_BasisFunction_L, * Current_SubSpace_L, * Current_GlobalQuantity_L ;List_T * Current_WholeQuantity_L, * Current_System_L ;List_T * Operation_L ;int Nbr_Index, Flag_MultipleIndex, Flag1 ;List_T * ListOfFormulation ;List_T * ListOfBasisFunction, * ListOfEntityIndex ;List_T * ListOfInt_Lnew ;int * ListOfInt_P ;char tmpstr[1024] ;int i, j, k, l, FlagError ;int Num_BasisFunction = 1 ;int YaccLevel = 0 ;int Type_TermOperator, Type_Function, Type_SuppList ;int Quantity_TypeOperator, Quantity_Index ;int Current_DofIndexInWholeQuantity, Last_DofIndexInWholeQuantity ;int Current_NoDofIndexInWholeQuantity ;int Current_System ;int Nbr_Arguments ;int Constraint_Index ;int TypeOperatorDofInTrace, DefineQuantityIndexDofInTrace ;double d ;time_t date_info;FILE* File;struct Constant Constant_S, Constant1_S, Constant2_S ;struct Expression Expression_S, * Expression_P ;struct ExpressionPerRegion ExpressionPerRegion_S ;struct Group Group_S ;struct Constraint Constraint_S, * Constraint_P ;struct ConstraintPerRegion ConstraintPerRegion_S, * ConstraintPerRegion_P ;struct MultiConstraintPerRegion MultiConstraintPerRegion_S ;struct JacobianMethod JacobianMethod_S ;struct JacobianCase JacobianCase_S ;struct IntegrationMethod IntegrationMethod_S ;struct IntegrationCase IntegrationCase_S ;struct Quadrature QuadratureCase_S ;struct FunctionSpace FunctionSpace_S ;struct BasisFunction BasisFunction_S ;void (*FunctionDummy)();struct GlobalBasisFunction GlobalBasisFunction_S ;struct SubSpace SubSpace_S ;struct GlobalQuantity GlobalQuantity_S ;struct ConstraintInFS ConstraintInFS_S ;struct Formulation Formulation_S ;struct DefineQuantity DefineQuantity_S ;struct EquationTerm EquationTerm_S ;struct WholeQuantity WholeQuantity_S, *WholeQuantity_P ;struct GlobalEquationTerm GlobalEquationTerm_S ;struct Resolution Resolution_S ;struct DefineSystem DefineSystem_S ;struct Operation Operation_S, * Operation_P ;struct ChangeOfState ChangeOfState_S ;struct PostProcessing PostProcessing_S ;struct PostQuantity PostQuantity_S ;struct PostQuantityTerm PostQuantityTerm_S ;struct PostOperation PostOperation_S ;struct PostSubOperation PostSubOperation_S ;#define MAX_RECUR_LOOPS 100static double x0, x1, step;static int ImbricatedLoop = 0, do_next;static fpos_t yyposImbricatedLoopsTab[MAX_RECUR_LOOPS];static int yylinenoImbricatedLoopsTab[MAX_RECUR_LOOPS];static double LoopControlVariablesTab[MAX_RECUR_LOOPS][3];static char *LoopControlVariablesNameTab[MAX_RECUR_LOOPS];#line 183 "GetDP.y"typedef union { char *c ; int i ; double d ; List_T *l ; struct TwoInt t ;} YYSTYPE;#include <stdio.h>#ifndef __cplusplus#ifndef __STDC__#define const#endif#endif#define YYFINAL 2035#define YYFLAG -32768#define YYNTBASE 269#define YYTRANSLATE(x) ((unsigned)(x) <= 500 ? yytranslate[x] : 459)static const short yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 253, 2, 261, 262, 251, 2, 2, 256, 257, 249, 247, 266, 248, 260, 250, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 241, 2, 243, 235, 267, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 258, 2, 259, 255, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 264, 2, 265, 268, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -