Experimental Physics and
| |||||||||||||||
|
You don't need a subroutine record for this. You might be able to get it into a single calcout record using techniques folks have already mentioned, but as they've noted, the result might be hard to understand. I would do this with a transform record, if the record is available. You'd have 16 calc-type expressions, each with a comment to describe it, all in one record, so you could break this into separate expressions and then combine the results. For example: field(CLCF, "235>B && 5>D && 5>E") field(CLCG, "B*0.00835-0.7") field(CLCH, "A+(C-B)*0.25") field(CLCI, "F?(G>H?G:H):0) Actually, I'd rewrite that last expression as field(CLCI, "F?MAX(H,G):0") This seems to me easier to understand and modify than the equivalent implementation with calcout records. Tim On 9/28/2010 3:03 PM, Andrew Wagner wrote: (235>B&& 5>D&& 5>E) ? (B*0.00835 - 0.7> A + (C-B)*0.25 ? B*0.00835 - 0.7: A + (C-B)*0.25): 0
| ||||||||||||||
ANJ, 28 Sep 2010 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing · |