mikeio icon indicating copy to clipboard operation
mikeio copied to clipboard

Pfs EXPRESSION with line breaks can not be parsed

Open ecomodeller opened this issue 3 years ago • 0 comments

    Here is another tricky example: see EXPRESSION with line breaks
           [AUXILIARY_VARIABLE_9]
         SYMBOL = 'L'
         ID = 424
         DESCRIPTION = 'L, wave length (m) Fenton & McKee, 1990'
         ONLINE_HELP = ''
         DOCUMENTATION = ''
         EUM_TYPE = 999
         EUM_UNIT = 0
         OUTPUT = 'YES'
         SCOPE = 'NOT_SPECIFIED'
         SPATIAL_VARIATION = 'HORISONTAL'
         UNIT = 'm'
         EXPRESSION = '"IF(depth>0.0,IF(Tp>0.0,

g*Tp*Tp/(2.0*PI())*POW(TANH(POW(2.0*PI()*SQRT(depth/g)/Tp,1.5)),0.667),0.0),0.0)"'
      EndSect  // AUXILIARY_VARIABLE_9

and another one with a multiline expression containing = signs:

      [AUXILIARY_VARIABLE_13]
         SYMBOL = 'CDc'
         ID = 428
         DESCRIPTION = 'CDc, average curent direction, rad'
         ONLINE_HELP = 'Auxiliary_252 Online help'
         DOCUMENTATION = '..\..\Manuals\MIKE ZERO\ECOLab_EU.pdf'
         EUM_TYPE = 999
         EUM_UNIT = 0
         OUTPUT = 'YES'
         SCOPE = 'NOT_SPECIFIED'
         SPATIAL_VARIATION = 'HORISONTAL'
         UNIT = 'rad'
         EXPRESSION = '"if(CS_CDorUV_avg==0,CD,if(U_avg>=0,if(V_avg>0,arcsin(U_avg/CSc),if(V_avg<0,90+arcsin(U_avg/CSc),0)),0)+

if(U_avg<0,if(V_avg>=0,360+arcsin(U_avg/CSc),180-arcsin(U_avg/CSc)),0))*Pi()/180"'
         CALCULATION_TYPE = 'standard'
      EndSect  // AUXILIARY_VARIABLE_13

Originally posted by @ecomodeller in https://github.com/DHI/mikeio/issues/446#issuecomment-1277891555

ecomodeller avatar Oct 14 '22 05:10 ecomodeller