XSLPpreparseformula
| XSLPpreparseformula | 
  Purpose
 
 
 Perform an initial scan of a formula written as a character string, identifying the operators but not attempting to identify the types of the individual tokens
 
 
  Synopsis
 
 int XPRS_CC XSLPpreparseformula(XSLPprob Prob, char *Formula, int *nToken, int *Type, double *Value, char *StringTable, int *SizeTable);
 
  Arguments
 
 | 
     Prob 
     | 
     The current SLP problem.
     | 
| 
     Formula 
     | 
     Character string containing the formula, written in the same free-format style as formulae in Extended MPS format, with spaces separating tokens.
     | 
| 
     nToken 
     | 
     Address of an integer to receive the number of tokens in the parsed formula (not counting the terminating
     XSLP_EOF token). May be
     NULL if not required.
     | 
| 
     Type 
     | 
     Array of token types providing the parsed formula.
     | 
| 
     Value 
     | 
     Array of values corresponding to the types in
     Type.
     | 
| 
     StringTable 
     | 
     Character buffer to receive the names of the unidentified tokens.
     | 
| 
     SizeTable 
     | 
     Address of an integer variable to hold the size of
     StringTable actually used. May be
     NULL if not required.
     | 
  Example
 
 
 The following example converts the formula "sin(x+y)" into internal parsed format without trying to identify the tokens apart from operands and numbers, and then writes it out as a sequence of tokens.
 
 int n, Type[20];
double Value[20];
char Strings[200];
XSLPpreparseformula(Prob, "sin ( x + y )", NULL,
                    Type, Value, Strings, NULL);
printf("\n");
for (n=0;Type[n] != XSLP_EOF;n++) {
  if (Type[n] == XSLP_UNKNOWN)
    printf("\n? %s",Strings[(int)Value[n]]);
  else {
    XSLPitemname(Prob, Type[n], Value[n], Buffer);
    printf(" %s", Buffer);
  }
}
  Further information
 
 Only operands and numbers are identified by XSLPpreparseformula. All other operands, including names of variables, functions are left as strings of type XSLP_UNKNOWN. The Value of such a type is the index in StringTable of the start of the token name.
The parsed formula can be converted into a calculable formula by replacing the XSLP_UNKNOWN tokens by the correct types and values.
  Related topics
 
  
