# CALL $TRILINEAR Name of trilinear graph? STRENGTH F(x1,x2,...)=? A+2*B+3*C-A*B/50+SIN(Z) The function: F(A, B, C, Z) = A+2*B+3*C-A*B/50+SIN(Z) was found by the parse. Specify "process variables" (enter ? for an explanation) ?[No] N Test case: (100/4)+2*(100/4)+3*(100/4)-(100/4)*(100/4)/50+SIN((100/4)) evaluated to 137.367648 without errors. Function is: F(A, B, C, Z) = A+2*B+3*C-A*B/50+SIN(Z) OK to use this function ? [Yes] N F(x1,x2,...)=? A+2*B+3*C-A*B/50+D+SIN(Z) The function: F(A, B, C, D, Z) = A+2*B+3*C-A*B/50+D+SIN(Z) was found by the parse. Specify "process variables" (enter ? for an explanation) ?[No] Y Enter name of a process variable to specify. Press RETURN if through. Z Value for Z ? 0 Enter name of a process variable to specify. Press RETURN if through. ? If you wish to specify constant values for "process variables" enter the name of a variable in your equation. Process variables are "ordinary" variables not constrained to add up to 100% (i.e. pH, temperature, etc.) Enter name of a process variable to specify. Press RETURN if through. Test case: (100/4)+2*(100/4)+3*(100/4)-(100/4)*(100/4)/50+(100/4)+SIN(0) evaluated to 162.5 without errors. Function is: F(A, B, C, D) = A+2*B+3*C-A*B/50+D+SIN(Z) Given: = <0> OK to use this function ? [Yes] Enter chemical name for axis 1: [A] Enter lower constraint for A: [0] Enter upper constraint for A: [100] Enter calculational interval size for A: [2.5] Enter chemical name for axis 2: [B] Enter lower constraint for B: [0] Enter upper constraint for B: [100] Enter calculational interval size for B: [2.5] Enter chemical name for axis 3: [C] Enter lower constraint for C: [0] Enter upper constraint for C: [100] Enter calculational interval size for C: [2.5] Enter the values of the non-contoured mixture variables below: Enter a constant value for D: [0] 0 Number of contour intervals ? [10] Apply pseudo components transformation ? [No] Spacing (in %) between grid lines ?[10] Leave "window" for axes labels ? [No] Add specific data points to the plot ?[No] Adding contour region 1 from interval # 1 .... Curve 1 added. Adding contour region 2 from interval # 2 .... Curve 2 added. Adding contour region 3 from interval # 3 .... Curve 3 added. Adding contour region 4 from interval # 4 .... Curve 4 added. Adding contour region 5 from interval # 5 .... Curve 5 added. Adding contour region 6 from interval # 6 .... Curve 6 added. Adding contour region 7 from interval # 7 .... Curve 7 added. Adding contour region 8 from interval # 8 .... Curve 8 added. Adding contour region 9 from interval # 9 .... Curve 9 added. Adding contour region 10 from interval # 10 .... Curve 10 added. Save your responses in a table for use in future sessions ?[No] ? Answer YES if you wish to create a table which contains all of the information this procedure needs to make a trilinear graph. By editing this table you may use it to make new trilinear graphs noninteractively by passing this table as the second parameter to this procedure ($TRILINEAR). For example: # call public $trilinear('my_tri_graph','my_tri_table') Save your responses in a table for use in future sessions ?[No] Y Name for trilinear information table ? STRENGTH_INFO Display trilinear graph STRENGTH ? [No] Y STRENGTH 14-JAN-88 0:09 Page 1 A+2*B+3*C-A*B/50+D+SIN(Z) Proccess Settings: Z=0; +--------------------------*1C0*--------------------------+ A 87.5 to 109 | ****90***** | B 110 to 130 | *******80******** | C 130 to 151 | **********70*********** | D 151 to 172 | *************60************** | E 173 to 194 | B*0*************50*************0*A* | F 194 to 215 | *********10**20****40****20**10********** | G 215 to 236 | *******************40330040******************** | H 237 to 257 | *************60***50*****20*****50***60************** | I 258 to 278 |*******80**70**************10**************70**80********| J 279 to 300 10090************************0***********************90**100 C B Mixture Settings: D=0; Constraints: 0 < A < 100; 0 < B < 100; 0 < C < 100 # SET CONNECTED OF CURVE 11 OF GRAPH STRENGTH="NO" # DIS STRENGTH STRENGTH 14-JAN-88 0:12 Page 1 A+2*B+3*C-A*B/50+D+SIN(Z) Proccess Settings: Z=0; +---------------------------1C0---------------------------+ A 87.5 to 109 | I.J90JJ.J | B 110 to 130 | H.IIII80IIIJJ.I | C 130 to 151 | G.HHHHHHH70HIHIIIII.I | D 151 to 172 | F.GGGGGGGGGG60HHHHHHHHIHI.H | E 173 to 194 | BE0.FFFFFFFFFFFF50GGGGGGGGHGHHH0HA | F 194 to 215 | DE.EEEEE10EE20EEEF40FFFF20FF10GGGGHG.HG | G 215 to 236 | CD.DDDDDDDDDDDDDDD40330040EEEEEFFFFFFGFGGG.GG | H 237 to 257 | CC.CCCCCCCCC60CCC50CCCCC20DDDDD50DED60EEFEFFFFGG.GG | I 258 to 278 |BB.BBBB80BB70BBBBBBBBBBBBBB10CCCCCCCCDCDDDD70EE80EFFFF.FF| J 279 to 300 10090A.AAAAA.AAAA.AAAAA.AAAAA0ABABB.BBBBC.CCCC.DDDDE.90EF100 C B Mixture Settings: D=0; Constraints: 0 < A < 100; 0 < B < 100; 0 < C < 100 # DIS STRENGTH NOHEADER NOTITLE NOKEY NONOTES +----------------------------------100-----------------------------------+ | JJJJ | | .JJJJJJ. | | IIIII90JJJJJ | | .IIIIIIIIIIIJIJ. | | HHHHHIHIH80IIIIIIIII | | .HHHHHHHHHHHHIHIIIIII. | | GGGGHGHGHHHH70HHHHHHHIHIII | | .GGGGGGGGGGGGGGHGHHHHHHHHHIHI. | | FGFGFGGFGFGGGGGG60GGGGGHGHHHHHHHIH | | B .FFFFFFFFFFFFFFFFFGGGGGGGGGGGGHGHHHHH. A | | F0F F F FF F F F F 50 F F G G GG G H 0 H | | EEEEEEE10EEEEFEFEFFFFFFFFFFFFFGG10GGGGGHHH | | E.EEEEEEEEEEEE20EEEEEE40FEFFF20FFFFGFGGGGGGG.H | | DDDDDDDDDDDDDDDDDEDEDE30E30EEEEEEEFFFFFFFFFGGGGGGG | | D.DDDDDDDDDDDDDDDDDDDD40DD30E40DEEEEEEEFEFFFFFFFGGGG.G | | CCCCCCCCCCCCCCCCCC50CDCDCDCDDDDDDDDDD50EEEEEEEEFFFFFFFGGGG | | C.CCCCCCCCCBCBC60CCCCCCCCCCCCC20CCDCDDDDDDDD60EEEEEEFEFFFFFF.G | | CBBBBBBBBB70BBBBBBBBBBBBBBCBCBCCCCCCCCCCCDDDDDDDDDE70EEEEFEFFFFG | | B.BBBBB80ABABBABABABABABBBBBBBBBB10BBCBCBCCCCCCCDCDDDDDEDE80EEEFFF.F | |ABA90AAAAAAAAAAAAAAAAAAAAAAAAAAAAABBABBBBBBBBBCBCCCCCCCCDDDDDDDEEE90FFFF| 100-AA-.-A-A-A-.A-A-A-.-A-AA-.-A-A-A0.A-A-A-.-BB-B-.-C-C-C.-D-D-D-.-EE-E100B # TERMINAL='LPT132' (Setting TERMINAL to LPT132 ... Done) # DIS STRENGTH NOHEADER NONOTES NOTITLE NOKEY +-------------------------------------------------------------100-------------------------------------------------------------+ | J J | | J J J | | | | J J J J | | . J 90 J . | | | | I I J J J J | | I I I I J J J | | I I I I I I J J | | | | . I I I 80 I I I . | | H H I I I I I I I I | | H H H H H I I I I I I | | | | H H H H H H H I I I I I | | . H H H H H 70 H H I I I . | | G G H H H H H H H H H I I I | | | | G G G G G H H H H H H H H I I | | G G G G G G G G H H H H H H I I | | | | . G G G G G G G 60 G H H H H H H . | | G G G G G G G G G G G G H H H H H I | | F F F F F F G G G G G G G G H H H H H | | | | B F F F F F F F F F G G G G G G G H H H H A | | 0. F F F F F F F F F 50 G G G G G G G H H 0 | | F F F F F F F F F F F F F F G G G G G H H H | | | | E E E E 10 E E F F F F F F F F F G G 10 G G H H | | E E E E E E E E E E F F F F F F F F G G G G H H | | . E E E E E E E E E E E E F F F F F F G G G G G . | | 20 40 20 | | E E E E E E E E E E E E E E E F F F F F F G G G G H | | D D D D D D D D D E E E 30 E 30 E E E F F F F F G G G G | | | | D D D D D D D D D D D D E E E E E E E E F F F F G G G G | | . D D D D D D D D D D D 40 D 30 E 40 E E E E F F F F F G G . | | D D D D D D D D D D D D D D D D D D E E E E E F F F F G G G | | | | C C C C C C C C C C 50 D D D D D D D D D 50 E E E E F F F F G G | | C C C C C C C C C C C C C C C D D D D D D D E E E E F F F F G G | | . C C C C C C C C C C C C C C C C C D D D D D D E E E E F F F F . | | 60 20 60 | | C C C C C C B B C C C C C C C C C C C C D D D D D E E E E E F F F G | | C B B B B B 70 B B B B B B B C C C C C C C C D D D D D E 70 E E F F F G | | B B B B B B B B B B B B B B B B B B C C C C C C D D D D D E E E E F F F | | | | . B B B 80 B B B B B B B B B B B B B 10 B C C C C C C D D D D E E 80 E F F . | | B B B B A A A A A A A A A A B B B B B B B B B C C C C C D D D D E E E F F F | | | | B A 90 A A A A A A A A A A A A A A A B B B B B B B C C C C C D D D D E E 90 F F | | A A A A A A A A A A A A A A A A A A A A A B B B B B B C C C C D D D D E E E F F | 100A--A--A---.--A--A--A--.--A--A---A--.--A--A--A--.---A--A--A--0--A--A--A---.--B--B--B--.--C--C---C--.--D--D--D--.---E--E--E-100 $ rs1 RS/1 Release 3.0 Used under license from BBN Software Products Corporation. Copyright (c) 1987 by BBN Software Products Corporation. All rights reserved. Serial Number V-30636 # terminal='lpt80' (Setting TERMINAL to lpt80 ... Done) # dir Directory Listing: @ 0 Name 1 Type ----------------------- 1 STRENGTH Graph 2 STRENGTH_INFO Table # dis strength_info STRENGTH_INFO 4R x 10C 14-JAN-88 10:08 Page 1 A+2*B+3*C-A*B/50+D+SIN(Z) 0 Component Name 1 Value 2 Low 3 High 4 Increment 5 Component Map ---------------------------------------------------------------------- 1 A 0 20 100 2.5 1 2 B 0 30 100 2.5 2 3 C 0 20 100 2.5 3 4 D 0 0 100 2.5 4 0 Component Name 6 Process Variable 7 Contour Number 8 Pseudo-Component Assignments Flag -------------------------------------------------------------------------- 1 A Z=0; 10 False 2 B 3 C 4 D 0 Component Name 9 Grid Line Spacing 10 Label Window Size ----------------------------------------------------------- 1 A 10 -1 2 B 3 C 4 D # enter col 6 to 10 of row 1 of strength_info Col 6. Process Variable Assignments Row 1. A [Z=0; ]: Col 7. Contour Number [10]: Col 8. Pseudo-Component Flag [True]: False Col 9. Grid Line Spacing [10]: # call $trilinear('strength_limited','strength_info',EMPTY) Adding contour region 1 from interval # 1 .... Curve 1 added. Adding contour region 2 from interval # 2 .... Curve 2 added. Adding contour region 3 from interval # 3 .... Curve 3 added. Adding contour region 4 from interval # 4 .... Curve 4 added. Adding contour region 5 from interval # 5 .... Curve 5 added. Adding contour region 6 from interval # 6 .... Curve 6 added. Adding contour region 7 from interval # 7 .... Curve 7 added. Adding contour region 8 from interval # 8 .... Curve 8 added. Adding contour region 9 from interval # 9 .... Curve 9 added. Adding contour region 10 from interval # 10 .... Curve 10 added. # plotter='zetac' (Setting PLOTTER to zetac ... Done) # plot strength_limited (Generating operating system file plot.tmp ... Done) %DCL-I-SUPERSEDE, previous value of SYS$INPUT has been superseded Your plot is now being made ... Please wait # plot strength (Generating operating system file plot.tmp ... Done) %DCL-I-SUPERSEDE, previous value of FOR009 has been superseded Your plot is now being made ... Please wait # 'strength_info'[1,8]=TRUE # call $trilinear('strength_pseudo','strength_info',empty) Adding contour region 1 from interval # 1 .... Curve 1 added. Adding contour region 2 from interval # 2 .... Curve 2 added. Adding contour region 3 from interval # 3 .... Curve 3 added. Adding contour region 4 from interval # 4 .... Curve 4 added. Adding contour region 5 from interval # 5 .... Curve 5 added. Adding contour region 6 from interval # 6 .... Curve 6 added. Adding contour region 7 from interval # 7 .... Curve 7 added. Adding contour region 8 from interval # 8 .... Curve 8 added. Adding contour region 9 from interval # 9 .... Curve 9 added. Adding contour region 10 from interval # 10 .... Curve 10 added. # plot strength_pseudo (Generating operating system file plot.tmp ... Done) %DCL-I-SUPERSEDE, previous value of FOR009 has been superseded Your plot is now being made ... Please wait # enter col 5 of strength_info Col 5. Component Map Col Heading: Row 1. A [1]: Row 2. B [2]: Row 3. C [3]: 4 Row 4. D [4]: 3 # dis strength_info STRENGTH_INFO 4R x 10C 14-JAN-88 10:32 Page 1 A+2*B+3*C-A*B/50+D+SIN(Z) 0 Component Name 1 Value 2 Low 3 High 4 Increment 5 Component Map ---------------------------------------------------------------------- 1 A 0 20 100 2.5 1 2 B 0 30 100 2.5 2 3 C 0 20 100 2.5 4 4 D 0 0 100 2.5 3 0 Component Name 6 Process Variable 7 Contour Number 8 Pseudo-Component Assignments Flag -------------------------------------------------------------------------- 1 A Z=0; 10 True 2 B 3 C 4 D 0 Component Name 9 Grid Line Spacing 10 Label Window Size ----------------------------------------------------------- 1 A 10 -1 2 B 3 C 4 D # col 2=0 Use table STRENGTH_INFO? [Yes] # call $trilinear('dstrength','strength_info') Add specific data points to the plot ?[No] Adding contour region 1 from interval # 1 .... Curve 1 added. Adding contour region 2 from interval # 2 .... Curve 2 added. Adding contour region 3 from interval # 3 .... Curve 3 added. Adding contour region 4 from interval # 4 .... Curve 4 added. Adding contour region 5 from interval # 5 .... Curve 5 added. Adding contour region 6 from interval # 6 .... Curve 6 added. Adding contour region 7 from interval # 7 .... Curve 7 added. Adding contour region 8 from interval # 8 .... Curve 8 added. Adding contour region 9 from interval # 9 .... Curve 9 added. Adding contour region 10 from interval # 10 .... Curve 10 added. Display trilinear graph DSTRENGTH ? [No] # # plot dstrength (Generating operating system file plot.tmp ... Done) %DCL-I-SUPERSEDE, previous value of FOR009 has been superseded Your plot is now being made ... Please wait # enter col 2 Use table STRENGTH_INFO? [Yes] Col 2. Low Col Heading: Row 1. A [0]: 20 Row 2. B [0]: 30 Row 3. C [0]: Row 4. D [0]: 20 # # call $trilinear('dstrength_limited','strength_info',empty) Adding contour region 1 from interval # 1 .... Curve 1 added. Adding contour region 2 from interval # 2 .... Curve 2 added. Adding contour region 3 from interval # 3 .... Curve 3 added. Adding contour region 4 from interval # 4 .... Curve 4 added. Adding contour region 5 from interval # 5 .... Curve 5 added. Adding contour region 6 from interval # 6 .... Curve 6 added. Adding contour region 7 from interval # 7 .... Curve 7 added. Adding contour region 8 from interval # 8 .... Curve 8 added. Adding contour region 9 from interval # 9 .... Curve 9 added. Adding contour region 10 from interval # 10 .... Curve 10 added. # dis strength_info STRENGTH_INFO 4R x 10C 14-JAN-88 10:52 Page 1 A+2*B+3*C-A*B/50+D+SIN(Z) 0 Component Name 1 Value 2 Low 3 High 4 Increment 5 Component Map ---------------------------------------------------------------------- 1 A 0 20 100 2.5 1 2 B 0 30 100 2.5 2 3 C 0 0 100 2.5 4 4 D 0 20 100 2.5 3 0 Component Name 6 Process Variable 7 Contour Number 8 Pseudo-Component Assignments Flag -------------------------------------------------------------------------- 1 A Z=0; 10 True 2 B 3 C 4 D 0 Component Name 9 Grid Line Spacing 10 Label Window Size ----------------------------------------------------------- 1 A 10 -1 2 B 3 C 4 D # row 1 col 8 of strength_info=false # rename graph dstrength_limited to 'dstrength_pseudo' # plot dstrength_pseudo (Generating operating system file plot.tmp ... Done) %DCL-I-SUPERSEDE, previous value of FOR009 has been superseded Your plot is now being made ... Please wait # call $trilinear('dstrength_limited','strength_info',empty) Adding contour region 1 from interval # 1 .... Curve 1 added. Adding contour region 2 from interval # 2 .... Curve 2 added. Adding contour region 3 from interval # 3 .... Curve 3 added. Adding contour region 4 from interval # 4 .... Curve 4 added. Adding contour region 5 from interval # 5 .... Curve 5 added. Adding contour region 6 from interval # 6 .... Curve 6 added. Adding contour region 7 from interval # 7 .... Curve 7 added. Adding contour region 8 from interval # 8 .... Curve 8 added. Adding contour region 9 from interval # 9 .... Curve 9 added. Adding contour region 10 from interval # 10 .... Curve 10 added. # dir Directory Listing: @ 0 Name 1 Type --------------------------- 1 DSTRENGTH Graph 2 DSTRENGTH_LIMITED Graph 3 DSTRENGTH_PSEUDO Graph 4 STRENGTH Graph 5 STRENGTH_INFO Table 6 STRENGTH_LIMITED Graph 7 STRENGTH_PSEUDO Graph # plot dstrength;plot dstrength_limited;plot dstrength_pseudo (Generating operating system file plot.tmp ... Done) %DCL-I-SUPERSEDE, previous value of FOR009 has been superseded Your plot is now being made ... Please wait (Generating operating system file plot.tmp ... Done) %DCL-I-SUPERSEDE, previous value of FOR009 has been superseded Your plot is now being made ... Please wait (Generating operating system file plot.tmp ... Done) %DCL-I-SUPERSEDE, previous value of FOR009 has been superseded Your plot is now being made ... Please wait