Page 9 - Demo
P. 9
Interface to R%uf09f%uf09fRCPConsult2021-2025Page 9You need only to define a DEFFUNCnumber instead symbol %u2018?%u2019, for example 1. Do not alter fixed names R,StrurelToRand RInterface.If your symbolic expressions contain definition of at least oneFLIM, after parsing the expression above will be transformed toDEFFUNC(1,R,StrurelToR)(p1,p2){RCommon Interface}=RInterfaceTo use this DEFFUNChaving two arguments (p1,p2) in symbolic expressions you have to call it by its keyword FUNCwith specific values for (p1,p2). The first argument p1 is a text string and the second argument p2 defines a switch which can have only two values: 0 or 1. For case0 the abovetext string is thename of an external script file without extension%u2019.r%u2019written using rules as described in 6.For case 1it is a direct expression written in Rlanguage, see 7.FLIM(21)=FUNC(1)(\andFLIM(22)=FUNC(1)(\(RH/100)^5)/(10.65^5))^2.5\Additionally, a special formfor case1can be used. If the firstcharacter in the string of a function argumentisthe symbol %u2019%%u2019, the entire expression will be interpreted as a sequence of statement(s)for the Rengine, separated by %u2019;%u2019.In this case no value is computed, and the return value is an empty state like %u00d8. This possibility allows to provide pre-settingsand/or engine specific pre-calculation around acall of a state function or similar function in STRUREL. For example,DEFFUNC(41)=FUNC(1)(\1.5;n3<33.1+sin(pi/2)*5\DEFFUNC(42)=FUNC(1)(\DEFFUNC(43)=FUNC(1)(\DEFFUNC(44)=FUNC(41)+FUNC(42)+FUNC(43)Evaluation of DEFFUNC(44)looks like:This feature requires sufficient experience in the handling ofthe interface enginetoR. Please take a care when using it!