Go to the documentation of this file.
17 extern FILE *ReadParametersin;
20 int ReadParameterslex( void);
30 unsigned int boolValue;
35 %token _TRUE _FALSE _OR _AND _NOT _PI _COS _SIN _TAN _EXP _LOG _SQRT _INF _EPSILON _REPRESENTATION _SIGMA _SMALL_SIGMA _R _SR _E _CE _DELTA _BETA _RHO _STATE_PERIOD _N_SOLUTIONS _MAX_NEWTON_ITERATIONS _N_DOF _GAMMA _DUMMIFY _ERROR_SPLIT _SAFE_SIMPLEX _SIMPLIFICATION_LEVEL _LR2TM_Q _LR2TM_S _VDW_RATIO _LINKS _FLINKS _QLINKS _JOINTS _CUT_X _CUT_Y _CUT_Z _COEF_TEMP _NFAIL_MAX _DETECT_BIFURCATIONS _MAX_PLANNING_TIME _MAX_CHARTS _MAX_PLANNING_ITERATIONS _MAX_NODES_RRT _BI_RRT _RRT_GRAPH _DYNAMIC_DOMAIN _CD_ENGINE _SOLID _VCOLLIDE _PQP _FCL _C_FCL _BULLET _C_BULLET _RIGIDCLL _NONE _SAMPLING _TANGENT_SAMPLING _AMBIENT_SAMPLING _KDTREE_SAMPLING _PRETENSION
37 %token <intValue> _INTEGER
38 %token <realValue> _REAL
40 %type <realValue> ct_real
41 %type <boolValue> ct_bool
42 %type <intValue> ct_int
44 %type <realValue> real_expr
45 %type <boolValue> bool_expr
46 %type <intValue> int_expr
48 %type <boolValue> boolean_value
49 %type <intValue> rep_type
50 %type <intValue> col_engine
51 %type <intValue> sampling_mode
57 %right _MAX_PRECEDENCE
61 parameters : parameter parameters
65 parameter : _EPSILON '=' real_expr
68 Error( "Parameter EPSILON must be greater than (or equal to) 0.0");
71 | _CD_ENGINE '=' col_engine
75 | _REPRESENTATION '=' rep_type
81 if (($3>0.0)&&($3<1.0))
84 Error( "Parameter RHO must in the interval (0,1)");
86 | _SIGMA '=' real_expr
89 Error( "Parameter SIGMA must be greater than (or equal to) 0.0");
92 | _SMALL_SIGMA '=' real_expr
95 Error( "Parameter SMALL SIGMA must be greater than (or equal to) 0.0");
101 Error( "Parameter E must be greater than (or equal to) 0.0");
107 Error( "Parameter CE must be greater than (or equal to) 0.0");
113 Error( "Parameter R must be greater than 0.0");
119 Error( "Parameter SR must be below 0.0");
122 | _DELTA '=' real_expr
125 Error( "Parameter DELTA must be greater than (or equal to) 0.0");
128 | _BETA '=' real_expr
131 Error( "Parameter BETA must be larger or equal to 1");
134 | _STATE_PERIOD '=' int_expr
137 Error( "Parameter STATE_PERIOD must be greater than (or equal to) 0");
140 | _N_SOLUTIONS '=' int_expr
145 Error( "Parameter N_SOLUTIONS must be greater than (or equal to) 0");
147 | _MAX_NEWTON_ITERATIONS '=' int_expr
152 Error( "Parameter MAX_NEWTON_ITERATIONS must be greater than (or equal to) 1");
154 | _N_DOF '=' int_expr
157 Error( "Parameter N_DOF must be greater than (or equal to) 0");
160 | _GAMMA '=' real_expr
163 Error( "Parameter GAMNA must be greater than (or equal to) 0");
166 | _DUMMIFY '=' int_expr
170 | _ERROR_SPLIT '=' bool_expr
174 | _SAFE_SIMPLEX '=' int_expr
178 | _SIMPLIFICATION_LEVEL '=' int_expr
182 | _LR2TM_Q '=' real_expr
186 | _LR2TM_S '=' real_expr
190 | _VDW_RATIO '=' real_expr
195 Error( "Parameter VDW_RATIO must positive");
197 | _CUT_X '=' real_expr
201 | _CUT_Y '=' real_expr
205 | _CUT_Z '=' real_expr
209 | _COEF_TEMP '=' real_expr
213 | _NFAIL_MAX '=' int_expr
217 | _DETECT_BIFURCATIONS '=' int_expr
221 | _MAX_PLANNING_TIME '=' real_expr
224 Error( "Parameter MAX_PLANNING_TIME must positive");
228 | _MAX_PLANNING_ITERATIONS '=' int_expr
231 Error( "Parameter MAX_PLANNING_ITERATIONS must larger than 0");
235 | _MAX_CHARTS '=' int_expr
238 Error( "Parameter MAX_CHARTS must larger than 0");
240 Error( "Parameter MAX_CHARTS must lower than 10000000 (or enlarge the kd-tree)");
244 | _MAX_NODES_RRT '=' int_expr
247 Error( "Parameter MAX_NODES_RRT must larger than 1");
249 Error( "Parameter MAX_NODES_RRT must lower than 10000000 (or enlarge the kd-tree)");
253 | _BI_RRT '=' bool_expr
257 | _RRT_GRAPH '=' bool_expr
261 | _DYNAMIC_DOMAIN '=' real_expr
265 | _SAMPLING '=' sampling_mode
269 | _PRETENSION '=' real_expr
272 Error( "Parameter PRETENSION must larger than 0");
278 ct_bool : _ERROR_SPLIT
283 Error( "Undefined parameter in expression (ERROR_SPLIT)");
290 Error( "Undefined parameter in expression (BI_RRT)");
297 Error( "Undefined parameter in expression (RRT_GRAPH)");
301 ct_int : _STATE_PERIOD
306 Error( "Undefined parameter in expression (STATE_PERIOD)");
313 Error( "Undefined parameter in expression (N_SOLUTIONS)");
315 | _MAX_NEWTON_ITERATIONS
320 Error( "Undefined parameter in expression (MAX_NEWTON_ITERATIONS)");
327 Error( "Undefined parameter in expression (N_DOF)");
334 Error( "Undefined parameter in expression (DUMMIFY)");
341 Error( "Undefined parameter in expression (SAFE_SIMPLEX)");
343 | _SIMPLIFICATION_LEVEL
348 Error( "Undefined parameter in expression (SIMPLIFICATION_LEVEL)");
355 Error( "Undefined parameter in expression (N_FAILS)");
357 | _DETECT_BIFURCATIONS
362 Error( "Undefined parameter in expression (DETECT_BIFURCATIONS)");
364 | _MAX_PLANNING_ITERATIONS
369 Error( "Undefined parameter in expression (MAX_PLANNING_ITERATIONS)");
376 Error( "Undefined parameter in expression (MAX_CHARTS)");
383 Error( "Undefined parameter in expression (MAX_NODES_RRT)");
396 Error( "Undefined parameter in expression (EPSILON)");
403 Error( "Undefined parameter in expression (RHO)");
410 Error( "Undefined parameter in expression (SIGMA)");
417 Error( "Undefined parameter in expression (SMALL_SIGMA)");
424 Error( "Undefined parameter in expression (E)");
431 Error( "Undefined parameter in expression (CE)");
438 Error( "Undefined parameter in expression (R)");
445 Error( "Undefined parameter in expression (SR)");
452 Error( "Undefined parameter in expression (DELTA)");
459 Error( "Undefined parameter in expression (BETA)");
466 Error( "Undefined parameter in expression (GAMMA)");
473 Error( "Undefined parameter in expression (LR2TM_Q)");
480 Error( "Undefined parameter in expression (LR2TM_S)");
487 Error( "Undefined parameter in expression (VDW_RATIO)");
494 Error( "Undefined parameter in expression (CUT_X)");
501 Error( "Undefined parameter in expression (CUT_Y)");
508 Error( "Undefined parameter in expression (CUT_Z)");
515 Error( "Undefined parameter in expression (COEF_TEMP)");
522 Error( "Undefined parameter in expression (MAX_PLANNING_TIME)");
529 Error( "Undefined parameter in expression (DYNAMIC_DOMAIN)");
571 sampling_mode : _TANGENT_SAMPLING
582 Error( "KDTREE_SAMPLING can only be used if the cuik-kdtree library is available");
626 | '+' real_expr %prec _MAX_PRECEDENCE
630 | '-' real_expr %prec _MAX_PRECEDENCE
638 | real_expr '+' real_expr
642 | real_expr '-' real_expr
646 | real_expr '*' real_expr
650 | real_expr '^' real_expr
654 | real_expr '/' real_expr
658 | _COS '(' real_expr ')'
662 | _SIN '(' real_expr ')'
666 | _TAN '(' real_expr ')'
670 | _EXP '(' real_expr ')'
674 | _LOG '(' real_expr ')'
678 | _SQRT '(' real_expr ')'
692 | '+' int_expr %prec _MAX_PRECEDENCE
696 | '-' int_expr %prec _MAX_PRECEDENCE
704 | int_expr '+' int_expr
708 | int_expr '-' int_expr
712 | int_expr '*' int_expr
716 | int_expr '/' int_expr
723 bool_expr : boolean_value
739 | bool_expr _AND bool_expr
743 | bool_expr _OR bool_expr
749 boolean_value : _TRUE
760 Error( "Boolean values can only be 0/1 (or TRUE/FALSE)");
772 ReadParametersin=fopen(file, "r");
773 if (!ReadParametersin)
787 ReadParametersparse();
791 if ((*p)[i].name==NULL)
795 sprintf(ErrorText, "Parameter number %u is undefined (see sources/parameters.h to see parameter numbering)",i);
801 Error( "SMALL_SIGMA can not be larger than SIGMA");
804 Error( "EPSILON can not be larger than SIGMA");
807 Error( "DELTA can not be larger than R");
809 fclose(ReadParametersin);
#define CT_R Ball radius in atlas.
Definition of the boolean type.
#define PQP One of the possible collison detection engines.
#define TANGENT_SAMPLING One of the possible sampling modes.
#define REP_JOINTS One of the possible values of the REPRESENTATION parameter.
#define CT_SR Sampling ball in atlas.
#define CT_EPSILON Numerical tolerance.
#define REP_FLINKS One of the possible values of the REPRESENTATION parameter.
#define REP_LINKS One of the possible values of the REPRESENTATION parameter.
#define NOCD One of the possible collison detection engines.
#define CT_SMALL_SIGMA Box size threshold.
#define CT_SPLIT_TYPE Split type.
#define CT_NFAIL_MAX Number of successive trnasition test failues requiered before increasing the temperature.
#define CT_LR2TM_S Threshold to switch from linear relaxations to Taylor models for saddle equations.
#define CT_MAX_PLANNING_TIME Maximum time for path planning.
#define CT_RRT_GRAPH Graph RRT.
#define CT_SAMPLING Sampling mode.
#define CT_GAMMA Contant part of the search radius for nearest neightours in RRT*.
#define CT_SAFE_SIMPLEX Trade off between speed and numerical stability when using the simplex.
boolean ReadParameters(char *file, Tparameters *p) Reads a parameter set from a file.
void Error(const char *s) General error function.
#define RIGIDCLL One of the possible collison detection engines.
#define CT_SIGMA Box size threshold.
#define CT_ATLASGBF_BETA Cost penalty factor for atlasGBF.
#define CT_MAX_PLANNING_ITERATIONS Maximum iterations for path planning.
#define CT_BI_RRT Bi-directional RRT.
Error and warning functions.
#define CT_MAX_CHARTS Maximum number of charts in an atlas.
#define CT_CUT_X Limit of domain of the X dimension of 3d plots.
#define FCL One of the possible collison detection engines.
#define NPARAMETERS Total number of parameters.
#define CT_CUT_Z Limit of domain of the Z dimension of 3d plots.
#define KDTREE_SAMPLING One of the possible sampling modes.
#define CT_LR2TM_Q Threshold to switch from linear relaxations to Taylor models for quadratic equations.
Definitions of constants and macros used in several parts of the cuik library.
#define C_FCL One of the possible collison detection engines.
#define CT_CD_ENGINE Collision detection engine.
#define VCOLLIDE One of the possible collison detection engines.
#define CT_RHO Reduction threshold.
#define CT_REPRESENTATION Representation.
#define CT_N_SOLUTIONS Number of solution boxes to deliver.
#define CT_DUMMIFY Dummification level.
#define CT_PRETENSION Pre-tension.
#define CT_DYNAMIC_DOMAIN Dynamic domain.
boolean ParameterSet(unsigned int n, Tparameters *p) Checks if a parameter is already defined.
#define AMBIENT_SAMPLING One of the possible sampling modes.
#define CT_MAX_NEWTON_ITERATIONS Maximum number of iterations in the Newton-Raphson function.
#define CT_E Chart error in atlas.
double GetParameter(unsigned int n, Tparameters *p) Gets the value for a particular parameter.
#define CT_CUT_Y Limit of domain of the Y dimension of 3d plots.
#define CT_STATE_PERIOD Period between two consecutive savings of the state.
#define C_BULLET One of the possible collison detection engines.
#define CT_DELTA Size of the steps in the path connecting two configurations.
#define CT_COEF_TEMP Scale factor of the temperature parameter for Transition-based RRT.
#define CT_N_DOF Dimensionality of the solution space for the mechanism at hand.
unsigned int RPNline Number of the line currently parsed when reading a .param file.
#define BULLET One of the possible collison detection engines.
#define CT_DETECT_BIFURCATIONS TRUE (or 1) if bifurcation must be detected.
#define CT_VDW_RATIO Ratio over over the Van der Waals radius.
void SetParameter(unsigned int n, char *name, double v, Tparameters *p) Sets the name and value for a particular parameter.
Definition of the Tparameters type and the associated functions.
#define CT_CE Chart error in atlas.
#define CT_SIMPLIFICATION_LEVEL Simplification level.
#define CT_MAX_NODES_RRT Maximum number of nodes in an RRT.
#define SOLID One of the possible collison detection engines.
#define REP_QLINKS One of the possible values of the REPRESENTATION parameter.
|
Follow us!