Skip to content
  • Mark OLESEN's avatar
    33e0c4ba
    ENH: improve expression string expansions · 33e0c4ba
    Mark OLESEN authored
    - reuse more of stringOps expansions to reduce code and improve the
      syntax flexiblity.
    
      We can now embed "pre-calculated" values into an expression.
      For example,
    
           angle       35;
           valueExpr   "vector(${{cos(degToRad($angle))}}, 2, 3)";
    
      and the ${{..}} will be evaluated with the regular string evaluation
      and used to build the entire expression for boundary condition
      evaluation.
    
      Could also use for fairly wild indirect referencing:
    
           axis1   (1 0 0);
           axis2   (0 1 0);
           axis3   (0 0 1);
           index   100;
           expr   "$[(vector) axis${{ ($index % 3) +1 }}] / ${{max(1,$index)}}";
    33e0c4ba
    ENH: improve expression string expansions
    Mark OLESEN authored
    - reuse more of stringOps expansions to reduce code and improve the
      syntax flexiblity.
    
      We can now embed "pre-calculated" values into an expression.
      For example,
    
           angle       35;
           valueExpr   "vector(${{cos(degToRad($angle))}}, 2, 3)";
    
      and the ${{..}} will be evaluated with the regular string evaluation
      and used to build the entire expression for boundary condition
      evaluation.
    
      Could also use for fairly wild indirect referencing:
    
           axis1   (1 0 0);
           axis2   (0 1 0);
           axis3   (0 0 1);
           index   100;
           expr   "$[(vector) axis${{ ($index % 3) +1 }}] / ${{max(1,$index)}}";
Loading