home *** CD-ROM | disk | FTP | other *** search
Text File | 1987-12-15 | 94.5 KB | 4,591 lines |
- !!?
- 8,9
- #LG
- !#S
- "N#
- "N#
- 002
- #LG
- .YA
- 000
- 001
- #O1
- 002
- Help Index
- !"L
- Top Level Commands
- !%+
- 001
- #[E
- 001
- Help on Help
- !!S
- 001
- 0I%
- 004
- Help on Help
- !!S
- Configuration
- !$\
- Load File
- "16
- Top Level Commands
- !%+
- 001
- 17.
- 000
- 001
- 0]7
- 000
- 001
- 1SM
- 003
- Function Keys
- !&=
- Slash Commands
- ""=
- Navigation Commands
- !'%
- 001
- 1YM
- 001
- Top Level Commands
- !%+
- 001
- 2&%
- 001
- Top Level Commands
- !%+
- 001
- 24\
- 001
- Model Structure
- !(2
- 001
- $(;
- 001
- Problem Solving with TK
- !'M
- 001
- $R8
- 002
- Expression
- !+)
- Logical Expression
- !.#
- 001
- $XV
- 001
- Name Syntax
- !*9
- 001
- $^)
- 000
- 001
- &IJ
- 001
- Name Syntax
- !*9
- 001
- &PA
- 005
- Arithmetic Expression
- !02
- Relational Expression
- !/7
- Logical Expression
- !.#
- Symbolic Expression
- !-C
- Indeterminate Expressions
- "E9
- 001
- &V7
- 001
- Expression
- !+)
- 001
- &ZI
- 003
- Relational Expression
- !/7
- Boolean Functions
- !8+
- Expression
- !+)
- 001
- &^6
- 002
- Expression
- !+)
- Arithmetic Operators
- !1-
- 001
- '%=
- 002
- Expression
- !+)
- Arithmetic Operators
- !1-
- 001
- 5FN
- 002
- Arithmetic Expression
- !02
- Relational Expression
- !/7
- 012
- %,+
- %2+
- %4@
- %<7
- %<@
- %?Y
- %B=
- %GD
- %QQ
- %YB
- &&F
- &2]
- 000
- 001
- %2+
- 001
- Built-in Functions
- !24
- 001
- %4@
- 001
- Built-in Functions
- !24
- 001
- %<@
- 001
- Built-in Functions
- !24
- 001
- %?Y
- 001
- Built-in Functions
- !24
- 001
- %B=
- 001
- Built-in Functions
- !24
- 001
- %GD
- 001
- Built-in Functions
- !24
- 001
- %QQ
- 002
- Built-in Functions
- !24
- Complex Arithmetic
- !:<
- 001
- %YB
- 002
- Logical Expression
- !.#
- Built-in Functions
- !24
- 001
- &&F
- 001
- Built-in Functions
- !24
- 001
- &2]
- 001
- Built-in Functions
- !24
- 001
- '*T
- 001
- Complex Functions
- !7*
- 001
- *U8
- 000
- 001
- *\>
- 002
- Expression
- !+)
- Rule Syntax
- !(_
- 001
- +!.
- 002
- Expression
- !+)
- Rule Syntax
- !(_
- 001
- +)-
- 001
- Expression
- !+)
- 001
- +-$
- 001
- Built-in Functions
- !24
- 001
- +3O
- 001
- Name Syntax
- !*9
- 001
- +6S
- 001
- Built-in Functions
- !24
- 001
- +;=
- 001
- Built-in Functions
- !24
- 001
- +?]
- 001
- Values
- !*H
- 001
- +D/
- 001
- Built-in Functions
- !24
- 001
- +I2
- 001
- Expression
- !+)
- 001
- +OM
- 001
- Complex Arithmetic
- !:<
- 001
- +SH
- 001
- Expression
- !+)
- 001
- +W5
- 002
- Rule Syntax
- !(_
- Complex Arithmetic
- !:<
- 001
- +]T
- 001
- Expression
- !+)
- 001
- ,"6
- 001
- Values
- !*H
- 001
- ,%X
- 000
- 001
- ,)^
- 001
- Editing Commands
- "$H
- 001
- ,.5
- 001
- Blank Command
- "&$
- 001
- ,1Q
- 001
- Editing Commands
- "$H
- 001
- ,9K
- 001
- Save Command
- "4-
- 001
- ,F3
- 001
- Load Command
- "16
- 001
- ,S&
- 001
- Disk Index
- "0A
- 001
- ,]R
- 001
- Load Command
- "16
- 001
- -#.
- 000
- 001
- -)'
- 000
- 001
- -,K
- 000
- 001
- -1I
- 001
- Blank Command
- "&$
- 001
- -:/
- 000
- 001
- ->4
- 001
- Expression
- !+)
- 001
- -BR
- 001
- Disk Index
- "0A
- 001
- -H.
- 001
- Disk Index
- "0A
- 001
- -LF
- 000
- 001
- -P=
- 001
- Status Field
- "7'
- 001
- -V6
- 000
- 001
- -ZA
- 001
- Configuration
- !$\
- 001
- -]\
- 001
- Disk Index
- "0A
- 001
- .#0
- 001
- Disk Index
- "0A
- 001
- .(5
- 001
- Disk Index
- "0A
- 001
- .*.
- 001
- Disk Index
- "0A
- 001
- ..^
- 000
- 001
- .2^
- 001
- Disk Index
- "0A
- 002
- .8#
- .YA
- 000
- 001
- .8E
- 000
- 001
- .><
- 000
- 001
- .CM
- 000
- 001
- .G[
- 000
- 001
- .KL
- 000
- 001
- .Q,
- 001
- Disk Index
- "0A
- 001
- .TM
- 000
- 002
- .X;
- .YA
- 000
- 002
- .\Z
- .YA
- 000
- 002
- /%C
- ._;
- 000
- 001
- /)4
- 000
- 002
- /-G
- ._;
- 000
- 002
- //B
- ._;
- 000
- 002
- /0_
- ._;
- 000
- 002
- /2A
- ._;
- 000
- 002
- /6K
- ._;
- 000
- 002
- /9+
- ._;
- 000
- 002
- /;M
- ._;
- 000
- 002
- />A
- ._;
- 000
- 002
- /A6
- ._;
- 000
- 001
- /CN
- 000
- 002
- /FW
- ._;
- 000
- 001
- /H<
- 000
- 002
- /K2
- ._;
- 000
- 001
- /LS
- 000
- 002
- /O[
- /P7
- 000
- 002
- /T'
- ._;
- 000
- 002
- /V-
- ._;
- 000
- 002
- /Y4
- /P7
- 000
- 002
- /YP
- /P7
- 000
- 001
- /Z,
- 000
- 001
- /\P
- 001
- Symbolic Value
- !*H
- 001
- /^U
- 001
- Iterative Solver
- "+B
- 001
- 0)Z
- 000
- 001
- 0+&
- 000
- 001
- 0/_
- 001
- Iterative Solver
- "+B
- 001
- 099
- 002
- Overdefined
- !\%
- Comparison Tolerance
- "F$
- 001
- 0A<
- 001
- Inconsistent
- ![)
- 001
- *:Y
- 001
- Storage Command
- "//
- 001
- *AU
- 002
- Slash Commands
- ""=
- Sheet Select Command
- !_L
- 001
- '00
- 004
- Variable Sheet
- !`=
- Rule Sheet
- !`L
- Unit Sheet
- "!@
- Select Sheet Command
- !_L
- 001
- '7+
- 002
- Sheets
- !^+
- Window Command
- !],
- 001
- 2;2
- 000
- 001
- 2DC
- 002
- Status Field
- "?&
- Rule Syntax
- !(_
- 001
- 2I;
- 002
- Unit Sheet Fields
- "@'
- Unit Conversion
- "@G
- 001
- '=J
- 008
- Editing Commands
- "$H
- Window
- !],
- Storage
- "//
- Print
- ".'
- Examine
- "6X
- Reset
- "6I
- Quit
- ".K
- Top Level Commands
- !%+
- 001
- 'LF
- 006
- Edit Field
- "'0
- Blank
- "&$
- Delete
- "'V
- Insert
- "(<
- Copy
- "&J
- Move
- ")"
- 001
- 'W?
- 001
- Editing Commands
- "$H
- 001
- '\U
- 001
- Editing Commands
- "$H
- 001
- (*+
- 001
- Editing Commands
- "$H
- 001
- ($W
- 001
- Editing Commands
- "$H
- 001
- (3<
- 001
- Editing Commands
- "$H
- 001
- (:G
- 001
- Editing Commands
- "$H
- 001
- *L<
- 002
- Direct Solver
- "*Q
- Iterative Solver
- "+B
- 001
- -4D
- 000
- 001
- $1V
- 002
- Solvers
- "K(
- Solve Command
- ")H
- 001
- $<X
- 007
- Solvers
- "K(
- Solve Command
- ")H
- Direct Solver
- "*Q
- Comparison Tolerance
- "F$
- Iteration Count
- "H"
- Convergence Factor
- "I!
- Troubleshooting
- "J"
- 001
- (F\
- 001
- Slash Commands
- ""=
- 001
- (RN
- 001
- Slash Commands
- ""=
- 001
- )$J
- 004
- Load File
- "16
- Save File
- "4-
- Delete File
- "5S
- Disk Index
- "0A
- 001
- )-'
- 002
- Storage Command
- "//
- Wildcards
- "ME
- 001
- )D@
- 003
- Storage Command
- "//
- Disk Index
- "0A
- MiniTK Limits
- !$M
- 001
- )V:
- 005
- Save Model
- "4-
- Save Variables
- "4O
- Save Units
- "51
- Disk Index
- "0A
- Storage Command
- "//
- 001
- )]H
- 001
- Save Options
- "2@
- 001
- *&(
- 001
- Save Options
- "2@
- 001
- *-:
- 001
- Save Options
- "2@
- 001
- *4,
- 002
- Storage Command
- "//
- Disk Index
- "0A
- 001
- (Z+
- 000
- 001
- 3/"
- 000
- 001
- 3=H
- 001
- Variable Sheet
- !`=
- 001
- 3G8
- 003
- Variable Sheet
- !`=
- Values
- !*H
- Expressions
- !+)
- 001
- 3N:
- 002
- Name Syntax
- !*9
- Variable Sheet
- !`=
- 001
- 3Q&
- 001
- Variable Sheet
- !`=
- 001
- 3YK
- 004
- Variable Sheet
- !`=
- Unit Conversion
- "@G
- Display Unit
- ";L
- Calculation Unit
- "=)
- 001
- 47'
- 004
- Unit Field
- ":(
- Calculation Unit
- "=)
- Unit Name
- !*9
- Unit Conversion
- "@G
- 001
- 415
- 003
- Display Unit
- ";L
- Unit Name
- !*9
- Unit Conversion
- "@G
- 001
- 4%Z
- 000
- 001
- 4)?
- 001
- Iterative Solver
- "+B
- 001
- 4=+
- 001
- Rule Sheet
- !`L
- 001
- 4GE
- 001
- Rule Syntax
- !(_
- 001
- 2NH
- 001
- Unit Sheet
- "!@
- 001
- 2[O
- 002
- Unit Sheet
- "!@
- Unit Field
- ":(
- 001
- 5^R
- 005
- Status Line
- "C:
- Prompt/Error Line
- "D"
- Window Command
- !],
- Configuration File
- !$\
- Select Sheet Command
- !_L
- 001
- 5&7
- 001
- Screen Composition
- "A8
- 001
- 53?
- 003
- Screen Composition
- "A8
- Iteration Count
- "H"
- Convergence Factor
- "I!
- 001
- 5V*
- 001
- Zero-by-Zero Division
- "L"
- 001
- 4L(
- 003
- Typical Value
- "G8
- Iterative Solver
- "+B
- Overdefined Problem
- !\%
- 001
- 4Z#
- 001
- Comparison Tolerance
- "F$
- 001
- 6&2
- 002
- Iterative Solver
- "+B
- Convergence Factor
- "I!
- 001
- 63H
- 002
- Iterative Solver
- "+B
- Comparison Tolerance
- "F$
- 001
- 7C:
- 003
- Solvers
- "K(
- Examine Command
- "6X
- Help on Help
- !!S
- 001
- 6CI
- 002
- Direct Solver
- "*Q
- Iterative Solver
- "+B
- 001
- 74:
- 001
- Indeterminate Expressions
- "E9
- 001
- 7;$
- 001
- Troubleshooting
- "J"
- 001
- 6;3
- 000
- 001
- 59@
- 000
- 001
- #M<
- 000
- 145
- ┌────── Getting Started ──────┐
- !#.
- │ Problem Solving with TK │
- !'M
- │ Model Structure │
- !(2
- │ Rule Syntax │
- !(_
- │ S o l v e r s │
- "K(
- │ Unit Conversion │
- "@G
- │ Screen Composition │
- "A8
- │ S h e e t s │
- !^+
- │ Top Level Commands │
- !%+
- │ Saving and Loading │
- "//
- │ Troubleshooting │
- "J"
- │ How to Use Help │
- !!S
- └──────── Help Index ─────────┘
- !"L
- ═════════════ A ═════════════
- !!S
- Arithmetic Expression
- !02
- Arithmetic Operators
- !1-
- ═════════════ B ═════════════
- !!S
- Beep Signal
- "LQ
- Blank Command, /B
- "&$
- Boolean Functions
- !8+
- Built-in Functions
- !24
- ═════════════ C ═════════════
- !!S
- Calculation Unit
- "=)
- Comment Field
- ">1
- Comparison Tolerance
- "F$
- Complex Arithmetic
- !:<
- Complex Functions
- !7*
- Conditional Rule
- !(_
- Configuration
- !$\
- Convergence Factor
- "I!
- Copy Command, /C
- "&J
- ═════════════ D ═════════════
- !!S
- Delete Command, /D
- "'V
- Delete File, /SD
- "5S
- Direct Solver
- "*Q
- Disk Index
- "0A
- Display Unit
- ";L
- ═════════════ E ═════════════
- !!S
- Edit Field Command, F5
- "'0
- Editing Commands
- "$H
- Examine Command, /E
- "6X
- Exponential and Logarithmic Functions
- !4J
- Expression
- !+)
- Expression, Arithmetic
- !02
- Expression, Logical
- !.#
- Expression, Relational
- !/7
- Expression, Symbolic
- !-C
- ═════════════ F ═════════════
- !!S
- First Guess
- ">@
- Function Keys
- !&=
- Function Reference
- !)X
- ═════════════ G ═════════════
- !!S
- Getting Started
- !#.
- Global Filename Characters
- "ME
- ═════════════ H ═════════════
- !!S
- Help
- !!S
- Help Index
- !"L
- Hyperbolic Functions
- !52
- ═════════════ I ═════════════
- !!S
- IF Rules
- !(_
- Inconsistent Rule
- ![)
- Indeterminate Expressions
- "E9
- Input Field, Variable Sheet
- "7K
- Insert Command, /I
- "(<
- Iteration Count
- "H"
- Iterative Solver
- "+B
- ═════════════ L ═════════════
- !!S
- Limits of MiniTK
- !$M
- Load File, /SL
- "16
- Logical Expression
- !.#
- ═════════════ M ═════════════
- !!S
- Mathematical Constants
- !3:
- Memory Indicator
- "C:
- MiniTK
- !$M
- Model Structure
- !(2
- Move Command, /M
- ")"
- Multi-Argument Functions
- !9,
- ═════════════ N ═════════════
- !!S
- Name Field, Variable Sheet
- "8N
- Name Syntax
- !*9
- Navigation Commands
- !'%
- Non-Invertible Mathematical Functions
- !6B
- Numeric Value
- !*H
- ═════════════ O ═════════════
- !!S
- Other Invertible Mathematical Functions
- !5Z
- Output Field, Variable sheet
- "9D
- Overdefined Problem
- !\%
- Overwrite Filename
- !\G
- ═════════════ P ═════════════
- !!S
- Precedence of Operators
- !1-
- Print Command, /P
- ".'
- Problem Solving
- !'M
- Prompt/Error Line
- "D"
- ═════════════ Q ═════════════
- !!S
- Question Mark, ?
- "M6
- Quit Command, /Q
- ".K
- ═════════════ R ═════════════
- !!S
- Relational Expression
- !/7
- Reset Command, /R
- "6I
- Rule Field
- "?F
- Rule Sheet
- !`L
- Rule Syntax
- !(_
- Rule, Conditional
- !(_
- Rule, Unconditional
- !(_
- ═════════════ S ═════════════
- !!S
- Save Model, /SS
- "4-
- Save Options of Storage Command
- "2@
- Save Units, /SU
- "51
- Save Variables, /SV
- "4O
- Screen Composition
- "A8
- Select Sheet Command, =
- !_L
- Sheets
- !^+
- Slash Commands, /
- ""=
- Solution Indicator
- "C:
- Solve Command, F9
- ")H
- Solvers
- "K(
- Status Field, Rule Sheet
- "?&
- Status Field, Variable Sheet
- "7'
- Status Functions
- !9T
- Status Line
- "C:
- Storage Command, /S
- "//
- Symbolic Expression
- !-C
- Symbolic Value
- !*H
- ═════════════ T ═════════════
- !!S
- TK-Specific Functions
- !9T
- Top Level Commands
- !%+
- Trigonometric Functions
- !4"
- Troubleshooting
- "J"
- Typical Value
- "G8
- ═════════════ U ═════════════
- !!S
- Unconditional Rule
- !(_
- Unit Conversion
- "@G
- Unit Field, Variable Sheet
- ":(
- Unit Name
- !*9
- Unit Sheet
- "!@
- ═════════════ V ═════════════
- !!S
- Values
- !*H
- Variable Name
- !*9
- Variable Sheet
- !`=
- Variable Subsheet
- !`=
- ═════════════ W ═════════════
- !!S
- Wildcards
- "ME
- Window Command, /W
- !],
- ═════════════ Z ═════════════
- !!S
- Zero-by-Zero Division
- "L"
- 003
- UNKNOWN
-
- No Help was found for this context.
- 003
- This help file was composed by
- Magnus St. Norddahl in 1986.
- Copyright 1986 Universal Technical Systems, Inc.
- 019
- HOW TO USE HELP:
- - From anywhere in MiniTK press F1 to get help
- on the feature, error, or place that the
- cursor is covering (e.g. to get help on Rule
- Sheet, press = R F1).
- - If (More) is shown in the lower right corner,
- PgDn will show more information.
- - The arrow keys will move you among the Related
- Topics, if any, or among the entries in the
- Index. Press ─┘ to select a topic.
- - Help commands:
- ┌─────────┬──────────────────────────┐
- │ PgDn │ displays next screen │
- │ PgUp │ displays previous screen │
- │ L │ displays last topic │
- │ I │ displays the Help Index │
- │ F1 │ displays this screen │
- │ Q or F2 │ quits Help │
- └─────────┴──────────────────────────┘
- 019
- HOW TO USE THE HELP INDEX:
- - From any Help screen press I to invoke the
- Help Index. If you are anywhere else in
- MiniTK, press F1 I or ? I .
- - The arrow keys or will move you along the
- index. Pressing ─┘ will select the topic
- covered by the cursor.
- - The next time the Help Index is displayed, the
- cursor will be in the same place you left it
- the last time.
- - You may read through the major topics listed
- in the box on the first page of Help Index to
- familiarize yourself quickly with MiniTK.
- - The Help commands apply to the Help Index with
- the following additions or modifications:
- - PgDn or PgUp displays the next or the
- the previous index page,
- - Home or End moves the cursor to the
- beginning or end of the Index.
- 017
- TK MODELS serve as a base for problem solving
- in TK. The models used with MiniTK consist of:
-
- - Rules declared in the RULE SHEET
- - Variables declared in the VARIABLE SHEET with
- attributes defined in Variable Subsheets
- - Unit conversions defined in the UNIT SHEET
-
- NOTES:
- - TK models used with TK Solver Plus may take
- advantage of six other sheets in addition
- to the three sheets mentioned above:
- List Sheet Global Sheet
- Plot Sheet Function Sheet
- Table Sheet Numeric Format Sheet
- - Models developed in MiniTK can be used
- with TK Solver Plus
- 019
- The DIRECT SOLVER
- is activated by pressing F9. The Output
- fields on the Variable Sheet are then
- cleared and the new solution displayed.
-
- SOLUTION OF A SINGLE EQUATION:
- The Direct Solver solves an equation (rule)
- for an unknown variable, provided the values
- of all the other variables in that equation
- are known. The unknown must not appear more
- than once and must not be an argument of a
- non-invertible function.
-
- SOLUTION OF A SYSTEM OF EQUATIONS:
- The Direct Solver scans through the rules of a
- model and resolves them one after another
- until no further evaluation is possible.
- After each variable is evaluated it is
- substituted into the other rules.
- 040
- The ITERATIVE SOLVER
- solves equations or sets of equations that
- cannot be solved by the Direct Solver alone.
-
- DESCRIPTION:
- The Iterative Solver has to be used for
- solving equations or sets of equations which
- cannot be solved by the simple substitution,
- inversion and evaluation performed by the
- Direct Solver. In order to invoke the
- Iterative Solver, one or more unknown
- variables must be assigned guess values
- which temporarily play the role of inputs.
-
- The additional inputs make some equations
- overdefined (i.e., they cause errors inter-
- nally). The Iterative Solver manipulates the
- guess values, and calls the Direct Solver
- repeatedly until each of the error terms is
- reduced below the Comparison Tolerance.
-
- USAGE:
- - Make sure that your problem is well-defined,
- i.e. there are no fewer independent
- equations than unknowns.
- - Determine which variables remain unsolved
- after applying the Direct Solver, and which
- of them, if known, would trigger solving the
- rest of the equations (even at the expense of
- causing inconsistencies); select as few of
- them as needed.
-
- - Type G in the Status field and a guess value
- in the Input field of the selected variables.
- - Press F9 .
-
- NOTE:
- The Iteration Count and Convergence Factor are
- displayed on the Prompt/Error line during
- iteration.
- 019
- RULE SYNTAX
-
- An UNCONDITIONAL RULE has the form:
- <expression> = <expression>
-
- EXAMPLES:
- 1. a + b = c * d
- 2. remainder = mod(a,b)
- 3. theta = pi()^2 + r/2
- 4. y * (cos(x) - sin(y)) = ln(x)
- 5. x = 5
-
- A CONDITIONAL RULE has the form:
- IF <logical expr> THEN <unconditional rule>
-
- EXAMPLES:
- 1. IF x >= 0 THEN y = sqrt(x)
- 2. IF and(w>0, given('z)) THEN q=ln(w)*z
- 3. IF evltd('a) THEN b=a*c+d
- 015
- A FUNCTION REFERENCE has the form:
- function name(arguments)
-
- EXAMPLES:
- 1. pi()
- 2. ln(x)
- 3. cos(x*y)
- 4. max(a,b,c,d)
- 5. given('a,b*c,0)
-
- NOTE:
- In TK Solver Plus you can refer to both
- built-in and user-defined functions. Also,
- you can call user-defined List Functions, Rule
- Functions and Procedure Functions.
- 026
- TK NAME SYNTAX:
-
- - TK Names can be up to 200 characters long and
- can consist of letters (including interna-
- tional letters, ASCII values 128-154 and 160-
- 165; and Greek letters, ASCII values 224-238),
- digits and the special characters @ # $ % _
- - TK Names CANNOT begin with a digit or contain
- blanks.
- - TK Names are used as variable names.
- - TK Names preceded by an apostrophe are used as
- symbolic values.
- - TK Names are case-sensitive, i.e. the names
- RESULT, Result, and result are all different
- names (names of built-in functions are not
- case-sensitive).
-
- UNIT NAMES
- Unit names can contain any typeable
- characters, except for leading and trailing
- blanks (embedded blanks are allowed).
-
- DUPLICATE NAMES
- - The same name CANNOT appear twice in the Name
- Field column of a sheet; however, the same
- name can be used for a variable and a unit.
- 014
- BUILT-IN FUNCTIONS in MiniTK can be classified
- into the following groups:
-
- - Mathematical Constants
- - Trigonometric Functions
- - Exponential and Logarithmic Functions
- - Hyperbolic Functions
- - Other Invertible Mathematical Functions
- - Non-Invertible Mathematical Functions
- - Complex Functions
- - Boolean Functions
- - Multi-Argument Functions
- - TK-Specific Functions
-
- 006
- MATHEMATICAL CONSTANTS:
-
- PI() constant π, 3.141592653589793
- E() constant e, 2.718281828459045
-
- EXAMPLE: perimeter = 2*PI()*radius
- 018
- TRIGONOMETRIC FUNCTIONS:
-
- SIN(x) ASIN(x) R a d i a n s
- COS(x) ACOS(x) ~~~~~~~~~~~~~
- TAN(x) ATAN(x)
- ATAN2(y,x) (4-Quadrant arc tangent of y/x)
-
- SIND(x) ASIND(x) D e g r e e s
- COSD(x) ACOSD(x) ~~~~~~~~~~~~~
- TAND(x) ATAND(x)
- ATAN2D(y,x) (4-Quadrant arc tangent of y/x)
-
- EXAMPLES:
- 1. y - y0 = sin(x)/x
- 2. a/sind(α)=b/sind(ß)
-
- NOTE: The inverse trigonometric functions
- return principal values.
- 002
-
-
- 009
- EXPONENTIAL AND LOGARITHMIC FUNCTIONS:
-
- EXP(x) number e raised to the xth power
- LN(x) natural (base e) logarithm of x
- LOG(x) common (base 10) logarithm of x
-
- EXAMPLE:
- exp(-t^2)=phi
-
- 011
- HYPERBOLIC FUNCTIONS:
-
- SINH(x) ASINH(x)
- COSH(x) ACOSH(x)
- TANH(x) ATANH(x)
-
- EXAMPLE:
- (y1-y0)*k + 1 = COSH(k*(x1-x0))
-
-
-
- 020
- OTHER INVERTIBLE MATHEMATICAL FUNCTIONS:
-
- SQRT(x) positive square root of x
- ROOT(x,n) nth root of x
- ERF(x) error function
- GAMMA(x) gamma function,
- x-1 factorial for integer x>0
-
- EXAMPLES:
- 1. ROOT(-512,3) returns -8
- 2. GAMMA(6) returns 120
-
-
-
-
-
-
-
-
-
- 020
- NON-INVERTIBLE MATHEMATICAL FUNCTIONS:
- SGN(x) -1 if x < 0
- 0 if x = 0
- 1 if x > 0
- ABS(x) absolute value of x
- INT(x) integer part of x
- ROUND(x) x rounded to nearest integer
- ROUND(x,y) x rounded to the nearest
- multiple of y
- CEILING(x) smallest integer ≥ x
- FLOOR(x) largest integer ≤ x
- MOD(x1,x2) remainder of x1/x2
- DIVIDE(x1,x2) returns two values:
- int(x1/x2) and mod(x1,x2)
- STEP(x1,x2) 1 if x1 ≥ x2, 0 if x1 < x2
-
- EXAMPLES:
- 1. CEILING(-9.7) returns -9
- 2. FLOOR(-9.7) returns -10
-
- 020
- COMPLEX FUNCTIONS:
-
- POWER((x1,x2),n)
- calculates a complex number equivalent to
- the complex number (x1,x2) raised to the
- nth power
- RCIS(x1,x2)
- calculates a complex number in rectangular
- form equivalent to the complex number in
- polar form where x1 is the radius and x2
- is the angle in radians
- RCISD(x1,x2)
- same as rcis, except x2 is in degrees
-
- EXAMPLES:
- 1. POWER((5,2),3) returns (65,142)
- 2. RCISD(2,60) returns (1,sqrt(3))
-
-
-
- 034
- BOOLEAN FUNCTIONS:
-
- NOT(x) EQV(x,y)
- AND(series) IMPLY(x,y)
- OR(series)
-
- where:
- x,y ... logical expressions
- series .. any number of logical expressions
-
- EXAMPLES:
- 1. if or(k<3,k>5) then a=4*k
- 2. if and(not(w+y>15),w+y>0) then z=ln(w+y)
- 3. Answer = eqv(eqv(Tiger,Liar),not(Liar))
-
-
-
-
-
-
- DEFINITIONS (1 = true, 0 = false):
- ┌────────────┬─────┬─────┬─────┬─────┐
- │ x │ 1 │ 1 │ 0 │ 0 │
- │ y │ 1 │ 0 │ 1 │ 0 │
- ╞════════════╪═════╪═════╪═════╪═════╡
- │ NOT(x) │ 0 │ 0 │ 1 │ 1 │
- │ AND(x,y) │ 1 │ 0 │ 0 │ 0 │
- │ OR(x,y) │ 1 │ 1 │ 1 │ 0 │
- │ EQV(x,y) │ 1 │ 0 │ 0 │ 1 │
- │ IMPLY(x,y) │ 1 │ 0 │ 1 │ 1 │
- └────────────┴─────┴─────┴─────┴─────┘
-
-
-
- 026
- MULTI-ARGUMENT FUNCTIONS:
-
- MAX(series)
- returns largest value from the series
- MIN(series)
- returns smallest value from the series
- SUM(series)
- returns sum of values in the series
- MEMBER(x,series)
- returns 1 or 0 if the value of x is or is
- not among the values in the series
- POLY(x,series)
- returns value of a polynomial function of x
- with coefficients specified by the series of
- values (highest-degree coefficient first,
- coefficients of 0 for missing terms)
- NPV(x,series)
- returns net present value of the series of
- payments, assuming interest rate x
-
- EXAMPLES:
- 1. max(a,34,b,c,40)
- returns 43 if a=12, b=35, and c=43
- 2. poly(x,1,0,0,1) returns 9 if x=2
- 3. poly(x,1,4,3) returns 143 if x=10
-
- 041
- TK-SPECIFIC FUNCTIONS
-
- VALUE(var) returns the value of variable var
-
- Status functions, short form:
- GIVEN(var) returns 1 or 0 if the variable var
- is or is not assigned an input value
- EVLTD(var) returns 1 if the variable var was
- evaluated
- KNOWN(var) returns 1 if the variable var is
- known (i.e. given or evaluated)
- where var is an expression that evaluates
- into a symbolic value representing a variable
- name; in the simplest case it may be just a
- variable name preceded by an apostrophe.
-
- EXAMPLES:
- 1. VALUE(a) (returns 12 if a='R and R=12)
- 2. if KNOWN('phi) then L=phi*rho
- (the L=phi*rho rule applies if phi is known)
-
- Status functions, long form:
- GIVEN(vars,expr1,expr2)
- KNOWN(vars,expr1,expr2)
- EVLTD(vars,expr1,expr2)
- where vars means one or more expressions
- that evaluate into variable names.
- If all the vars variables are given, known
- or evaluated, the functions return expr1;
- else, they return expr2.
-
- EXAMPLES:
- 1. Rate = GIVEN('Rate,Rate,10)
- (if Rate is assigned an input value, the rule
- represents trivial identity Rate=Rate; else,
- the rule assigns a default value Rate=10)
- 2. L = KNOWN('phi,phi*rho,0/0)
- (if phi is known the rule becomes L=phi*rho;
- if phi is not known the rule is ignored)
- 3. if GIVEN('Θ,'α,'ß,1,0) then L=Θ*R
- (rule applies only if all Θ,α,ß are given)
- 016
- VALUES are either NUMERIC or SYMBOLIC
-
- NUMERIC values are any real number in standard
- or exponential format with up to 16
- significant digits and non-zero absolute value
- between 1E-307 and 1E308, or zero.
-
- EXAMPLES:
- 1. 1.09092 3. 18437560000000000000000
- 2. 6.672E-11 4. 0
-
- Symbolic values are any TK names preceded by
- an apostrophe.
-
- EXAMPLES:
- 1. 'x 2. 'Bank 3. 'a_row_1
- 018
- An EXPRESSION can be:
- - a CONSTANT VALUE
- - a VARIABLE name
- - a FUNCTION REFERENCE
- - an ARITHMETIC expression
- - a RELATIONAL expression
- - a LOGICAL expression
- - a SYMBOLIC expression
-
- EXAMPLES (in respective order):
- 1. 3409 or 'size
- 2. size
- 3. SQRT(speed)
- 4. (y2-y1)/(x2-x1)
- 5. a >= 34
- 6. AND(a <= 34,b > a)
- 7. GIVEN('Gas,Gas,'Oxygen)
-
- 011
- A SYMBOLIC EXPRESSION can be:
- - a symbolic value
- - an expression that evaluates into a symbolic
- value
-
- EXAMPLES:
- 1. given('soup,'entree,'dessert,'OK,'Incomplete)
- 2. pet (if pet equals, say, 'baboon)
- 3. 'wood
- 4. '$100_note
- 5. 'DOG_and_PONY_show
- 011
- A LOGICAL EXPRESSION can be:
- - a relational expression
- - a Boolean function
- - any other expression that evaluates into
- 1 (true) or 0 (false)
-
- EXAMPLES:
- 1. x <= y
- 2. or(x <= y,x >= w)
- 3. given('x)
- 4. abs(sgn(x))
- 018
- A RELATIONAL EXPRESSION
- has the form of two expressions linked by
- a relational operator.
-
- Relational operators are:
- = equal
- < less than
- > greater than
- <= =< less than or equal to
- >= => greater than or equal to
- <> >< not equal
-
- Relational expressions evaluate into numerical
- values 1 (true) or 0 (false).
-
- EXAMPLE:
- 1. x*y <= u*v
- 2. animal <> 'dog
- 013
- An ARITHMETIC EXPRESSION can be:
- - two expressions linked by an arithmetic
- operator (+ - * / ^). The constituent
- expressions (operands) must evaluate into
- numeric values.
- - any expression preceded by unary + or - .
-
- EXAMPLES:
- 1. a + b / (c * d)
- 2. (b > 3) + a
- 3. (a+b)^ln(x)
- 4. exp(cos(x)+sin(y))
- 5. -SIN(X)
- 012
- COMPLEX ARITHMETIC:
- A complex number, a+bi, is represented as a
- pair of two real numbers (a,b).
-
- When doing complex arithmetic, all operands
- in the rule must be paired expressions. If a
- function is used as an operand it must be
- two-valued.
-
- EXAMPLES:
- 1. (y,yi)=(a,0)*power((x,xi),3)+(b,0)
- 2. (a,b) = (c,d) * (e,f)
- 018
- SHEETS
- Communication between the user and TK is
- conducted through the sheets. Each sheet
- contains a different kind of information.
- In MiniTK there are three sheets:
- - Variable Sheet
- - Rule Sheet
- - Unit Sheet
-
- NOTE:
- TK Solver Plus has six other sheets in
- addition to the three sheets mentioned above:
- - Function Sheet
- - List Sheet
- - Plot Sheet
- - Table Sheet
- - Numeric Format Sheet
- - Global Sheet
- 014
- The SELECT command (=)
- displays any TK sheet in the current window.
-
- USAGE:
- - Type the Select command (=)
- - Type the first letter of the sheet you want to
- select, or move the cursor to the desired
- sheet name in the Option Box and press ─┘.
-
- NOTES:
- - You can use the Select command from any sheet
- or subsheet
- - To display a new sheet in the opposite
- window, use the Window command (/W)
- 024
- SLASH COMMANDS (/):
- Press / to bring up the Option Box, then press
- the first letter, or move the cursor over the
- desired command and press ─┘.
- ┌──────────────────┐ ┌────────────┐
- │ Editing Commands │ │ I/O │
- ├──────────────────┤ ├────────────┤
- │ B Blank fields │ │ S Storage │
- │ C Copy fields │ │ P Print │
- │ D Delete rows │ └────────────┘
- │ I Insert rows │ ┌────────────┐
- │ M Move rows │ │ Other │
- ╞══════════════════╡ ├────────────┤
- │ Changing Display │ │ E Examine │
- ├──────────────────┤ │ R Reset │
- │ W Window │ │ Q Quit │
- └──────────────────┘ └────────────┘
- NOTES:
- - Use the Help facility to find more information
- on specific commands; e.g. /S F1 gives you
- help on the Storage command; or press /, move
- the cursor over "Storage" and press F1.
- - The Function Keys duplicate some of the slash
- commands with one keystroke.
- 016
- EDITING COMMANDS
-
- ╔══════╤═════════════════════════════════════╗
- ║ F5 │ Edit Field: make changes in a field ║
- ╟──────┼─────────────────────────────────────╢
- ║ /B │ Blank a specified block of fields ║
- ╟──────┼─────────────────────────────────────╢
- ║ /D │ Delete a specified block of rows ║
- ╟──────┼─────────────────────────────────────╢
- ║ /I │ Insert blank lines in a specified ║
- ║ │ block of rows; Ins inserts one line ║
- ╟──────┼─────────────────────────────────────╢
- ║ /C │ Copy a specified block of fields ║
- ╟──────┼─────────────────────────────────────╢
- ║ /M │ Move a specified block of rows ║
- ╚══════╧═════════════════════════════════════╝
- 014
- The BLANK command (/B)
- blanks out a block of fields in a single
- column.
-
- USAGE:
- - Move the cursor to the first item you want
- blanked and type /B
- - Move the cursor to highlight the block of
- fields you want blanked
- - Press ─┘
-
- NOTE:
- - Use the Arrow keys or , and Home, End,
- PgUp or PgDn keys to move the cursor
- 019
- The COPY command (/C)
- copies a block of fields in a single column
- to another location.
-
- USAGE:
- - Move the cursor to the first field to copy
- - Type /C
- - Move the cursor to highlight the block of
- fields to be copied
- - Press ─┘
- - Move the cursor to the desired location to
- begin copying the defined block
- - Press ─┘
-
- NOTES:
- - Use the Arrow keys, and Home, End, PgUp or
- PgDn keys to move the cursor
- - COPYING INFORMATION INTO A FIELD OVERWRITES
- THE PREVIOUS CONTENTS OF THE FIELD
- 014
- The DELETE command (/D)
- deletes a block of rows you specify.
-
- USAGE:
- - Move the cursor to any location in the first
- row you want deleted
- - Type /D
- - Move the cursor to highlight the block of
- rows you want deleted
- - Press ─┘
-
- NOTE:
- - Use the Arrow keys or , and Home, End,
- PgUp or PgDn keys to move the cursor
- 018
- The EDIT FIELD command (F5)
-
- The in-field editor is invoked in the field
- marked by the cursor when:
- - you type F5 or Ctrl-E.
- - MiniTK detects an error in attempted entry.
-
- WHEN IN THE EDITOR:
- - Move the cue with the Arrow or Tab keys
- - Add characters by typing them at the location
- marked by the cue
- - Delete characters to the right of the cue
- with the Delete key (Del)
- - Delete characters to the left of the cue with
- the Backspace key (──)
- - Enter the changed contents by pressing ─┘
- - Exit the Editor without making any changes by
- pressing F2 or Ctrl-Break
- 016
- The INSERT command (/I)
- inserts blank row(s) in the current sheet.
-
- USAGE:
- - Move the cursor to the row where you want to
- start inserting.
- - Type /I.
- - Move the cursor to highlight the number of
- rows you want to be displaced by blank rows.
- - Press ─┘.
-
- NOTES:
- - The row marked by the cursor and all the rows
- below it are displaced downward, but the
- cursor remains in the same place.
- - Press the Ins key to insert a single row.
- 025
- The MOVE command (/M)
- moves a specified block of rows.
-
- USAGE:
- - Move the cursor to the first row to be moved
- - Type /M
- - Move the cursor to highlight the block of
- rows you want to move
- - Press ─┘
- - Move the cursor to the destination row where
- you want to place the highlighted block
- - Press ─┘
-
- NOTES:
- - Use the Arrow keys or , and Home, End,
- PgUp or PgDn keys to move the cursor
- - The Move command places the first row of the
- specified block in the destination row and the
- rest of the block in the following rows.
- - Existing row(s) at and below the destination
- row are displaced to make room; they move
- upward if the block is moved down, and
- downward if the block is moved up.
- - Blank rows move the same way as if they were
- filled.
- 025
- The PRINT command (/P)
- prints a block of rows from a TK sheet to
- a printer.
-
- USAGE:
- - Move the cursor to the sheet and row where
- you want printing to begin
- - Move the cursor to highlight the rows you
- want to print
- - Press ─┘
-
- NOTES:
- - Use the Arrow keys or , and Home, End,
- PgUp or PgDn keys to move the cursor
- - The block is momentarily displayed on the
- screen while it is being printed
- - Ctrl-Break can be used to stop printing.
-
-
- - This command is more useful in the full TK
- Solver Plus where it is possible to define
- printer settings on the Global Sheet and/or
- to save the specified rows under a chosen
- filename. Missing these options in MiniTK,
- you may prefer to dump the screen using PrtSc.
- 016
- The QUIT command (/Q)
-
- USAGE:
- - Type /Q
- - Type Y to confirm the Quit command, or
- - Type N or press F2 to cancel the Quit command
-
- NOTES:
- - If you want to clear information from the
- sheets without leaving MiniTK, use the Reset
- command (/R).
- - WHEN YOU QUIT TK, THE INFORMATION IN THE
- CURRENT SHEETS IS LOST. If you want to save
- what you have done before you leave MiniTK,
- use the Save option of the Storage command (F4
- or /SS) before quitting.
- 021
- The RESET command (/R) has three options:
-
- V (Variables) clears all input and output
- values from the Variable Sheet and Variable
- Subsheets (the First Guess values are not
- affected).
- S (Sheet) clears the current sheet or subsheet.
- A (All) clears all sheets and subsheets.
-
- USAGE:
- - Type /R
- - Type V, S or A to select the option you want
- - Type Y to confirm or N to cancel the Reset
-
- NOTES:
- - NOTHING WILL STOP A CONFIRMED RESET
- - Instead of pressing V, S or A and Y or N, you
- may move the cursor in the Option Box to the
- appropriate position and press ─┘.
- - Use the Quit command (/QY) rather than Reset
- if you want to leave MiniTK
- 018
- The STORAGE command (/S)
- loads, saves and deletes files from the disk.
- ┌───┬─────────────────────┐
- │ L │ Load TK File │
- │ S │ Save Model │
- │ V │ Variables Save │
- │ U │ Units Save │
- │ D │ Delete Any File │
- └───┴─────────────────────┘
- USAGE:
- - Type /S and the first letter of the option
- - Respond to any additional prompts
- (Press F2 or Ctrl-Break to cancel the Storage
- command without taking any action)
-
- NOTES:
- - F3 is equivalent to /SL.
- - F4 is equivalent to /SS.
- 053
- DISK INDEX
- lists disk files available to the current
- Storage command option.
-
- USAGE:
- - Type /S followed by any option character
- (You can press F3 instead of typing /SL
- or press F4 instead of typing /SS).
- - Type a drive designator and pathname if
- needed.
- - Type a partial filename with wildcards if you
- want to limit the display to related
- filenames.
- - Press ─┘ to display the Disk Index.
- - Move the cursor to the row of the desired
- file.
- - Press ─┘.
-
- NOTES:
- - If the desired file is not listed you will
- have to press F2 to exit the Disk Index
- and start over.
- - The Disk Index displays only files with
- .TK extension for all Storage options, except
- the Delete option (/SD) which displays files
- with any extension.
- - The Disk Index displays also the names of
- subdirectories. You can dive into a
- subdirectory by pressing > and return to the
- parent directory by pressing < .
-
-
-
-
-
-
- To load multiple files:
- - Access the Disk Index with F3 ─┘.
- - Type numbers in the Selection column to
- specify the order of loading (you can change
- the order by typing new numbers, or 0 to
- blank a selection).
- - Press ─┘.
-
- To delete multiple files:
- - Access the Disk Index with /SD ─┘.
- - Type numbers in the Selection column to
- specify the order of deletion (you can change
- the order by typing new numbers, or blank the
- selection by typing 0).
- - Press ─┘.
- - MiniTK will ask for confirmation on each
- deletion.
- 035
- The LOAD option (F3 or /SL)
-
- USAGE:
- - Press F3 or type /SL.
- - Type a drive designator and pathname if
- needed.
- - Type a filename, or access the Disk Index
- and move the cursor to the row of the
- filename.
- - Press ─┘.
-
- NOTES:
- - If MiniTK is not reset first, contents of new
- model are appended to end of current model.
- - Values from new model replace current values
- of duplicate variables.
- - Duplicate rules and unit conversions are
- repeated.
- - A model can be loaded right after TK is
- started by supplying the model name as an
- argument from DOS. For example:
- minitk loan ─┘
- will start MiniTK and then load the model
- LOAN.
- - If you load a TK model that has more
- variables, units, or rules than MiniTK can
- accommodate, MiniTK will only load as many
- lines from each sheet as are allowed by
- MiniTK and give the message "Incomplete
- load" (See "Limits of MiniTK"). TK Solver
- Plus does not have these limitations.
- - If you load a TK model that contains rules
- that cannot be understood by MiniTK, those
- rules will be marked with the unparsed-sign %
- and ignored.
- 018
- SAVE OPTIONS:
- - Save MODEL: Saves the entire model to a file.
- - Save VARIABLES: Saves only the Variable Sheet
- to a file.
- - Save UNITS: Save only the Unit Sheet with
- selected unit conversions to a file.
-
- NOTE:
- TK Solver Plus has eight other save options,
- in addition to the three mentioned above:
- - Function Save
- - Numeric Format Save
- - Plot Save
- - Table Save
- - DIF Save
- - WKS Save
- - ASCII Save
- - Configuration save
- 018
- The SAVE option (F4 or /SS)
-
- USAGE:
- - Press F4 or type /SS
- - Type a drive designator and pathname if needed
- - Type a filename or, if you want to overwrite a
- file, access the Disk Index
- - Press ─┘
-
- NOTES:
- - MiniTK adds the .TK extension to filenames
- saved under this option if no other extension
- is specified
- - If you use the Disk Index but find no
- file to overwrite, you must start over (F2)
- - See the Help screen on the Storage command for
- information on saving parts of a model rather
- than the whole model
- 016
- The SAVE VARIABLES option (/SV)
- saves the current Variable Sheet and Variable
- Subsheets in a TK file.
-
- USAGE:
- - Type /SV
- - Type a drive designator and pathname if needed
- - Type a filename or, if you want to overwrite a
- file, access the Disk Index
- - Press ─┘
-
- NOTES:
- - MiniTK adds the .TK extension to the filenames
- if no other extension is specified
- - If you use the Disk Index but find no file
- to overwrite, you must start over (F2)
- 015
- The SAVE UNITS options (/SU)
- saves the current Unit Sheet in a TK file.
-
- USAGE:
- - Type /SU
- - Type a drive designator and pathname if needed
- - Type a filename or, if you want to overwrite a
- file, access the Disk Index
- - Press ─┘
-
- NOTES:
- - MiniTK adds the .TK extension to the filenames
- if no other extension is specified
- - If you use the Disk Index but find no file
- to overwrite, you must start over (F2).
- 016
- The DELETE option (/SD)
- deletes files from disk.
-
- USAGE:
- - Type /SD
- - Type a drive designator and pathname if needed
- - Type the filename, or access the Disk Index
- to mark the file(s) to be deleted
- - Press ─┘
- - Confirm the deletion(s) by typing Y
-
- NOTES:
- - The Delete option can delete any kind of file,
- not just TK files
- - See the Help screen on the Disk Index for
- information on multiple deletions
- 014
- OVERWRITING A FILE
- means saving new information in the file in
- place of old information.
-
-
- OVERWRITING DESTROYS THE OLD CONTENTS OF A FILE:
-
- - If you want to replace the old information
- with the new information, confirm the command
- by typing Y. This destroys the old contents
- of the file.
- - If you want to preserve the old file, type N
- to cancel the Storage command. Save the new
- file under another filename.
- 022
- The WINDOW command (/W)
- controls the number of windows on the screen
- (one or two) and determines which sheet is
- displayed in the other window.
-
- To change the display from two windows to
- a SINGLE window:
- - Place the cursor on the sheet you want to
- retain
- - Press F6, or type /W1
-
- To split the screen into TWO windows and/or to
- display any sheet in the OTHER window:
- - Type /W
- - Type the first letter of the sheet you want
- displayed in the other window (or move the
- cursor in the Option Box to desired sheet and
- press ─┘)
- NOTE:
- - To display a different sheet in the current
- window, use the Select command (=) instead of
- the /W command
- 018
- The SOLVE command (F9)
- solves a model with the Direct or Iterative
- Solvers and displays the results in the Output
- fields of the Variable Sheet.
-
- USAGE:
- - Assign the known values of input and/or guess
- values for variables in the Variable Sheet.
- - Press F9
-
- NOTES:
- - TK applies the Iterative Solver only if you
- have provided guess values for one or more
- variables (by typing G in the Status field on
- the Variable Sheet or entering a First Guess
- value in the Variable Subsheet)
- - The Solve command may be used from anywhere
- in MiniTK
- 014
- PARSER ERROR
-
- This error should not have occurred.
-
- REMEDIAL ACTION:
- - Write down everything that might relate to
- this problem; copy the offending rule or
- expression and/or dump the screen to the
- printer by pressing [PrtSc].
- - If a rule entry was attempted, put a " in
- front of it and press [Enter]. Else, exit
- the editor pressing F2. In any case save
- the current model to a disk.
- - Notify UTS (call 1-800-HELP-UTS).
- 011
- MISSING OPERAND
-
- CAUSE:
- Attempting to enter a rule or expression
- which contains a dangling operator, equal
- sign, or other symbol.
-
- SOLUTION:
- The cue points to the problem spot. Edit the
- entry so that each operator has a name, value,
- or valid expression on either side of it.
- 010
- MISSING OPERATOR
-
- CAUSE:
- Attempting to enter a rule or expression
- which contains two parenthetical expressions
- with no operator between them.
-
- SOLUTION:
- Edit the entry so that adjacent parenthetical
- expressions are related by an operator.
- 010
- INVALID SYMBOLIC VALUE
-
- CAUSE:
- You attempted to enter an apostrophe followed
- by a character string which is not a valid TK
- name.
-
- SOLUTION:
- Edit the entry to replace the invalid symbolic
- value with a valid symbolic value.
- 009
- EXPECTED OPERATOR NOT FOUND
-
- CAUSE:
- You attempted to enter a rule that contains an
- invalid TK expression, i.e. the expression is
- missing an operator between two operands.
-
- SOLUTION:
- Change the expression so that it is valid.
- 017
- UNDEFINED FUNCTION
-
- CAUSES:
- - You entered an undefined function name
- immediately preceding a left parenthesis.
- - You entered a variable name immediately
- preceding a left parenthesis.
-
- SOLUTIONS:
- - Edit the expression to add an operator
- between the variable name and the left
- parenthesis.
-
- NOTE:
- - In TK Solver Plus, you would have the
- option to define your own function in
- the Function Sheet.
- 009
- INVALID FUNCTION NAME
-
- CAUSE:
- You entered an invalid TK name immediately
- preceding a left parenthesis.
-
- SOLUTION:
- Specify a valid function name when referring
- to a function.
- 011
- TOO MANY FUNCTION ARGUMENTS
-
- CAUSE:
- Attempt to enter a rule or expression that
- contains a function reference with more
- arguments than the definition of the
- function specifies.
-
- SOLUTION:
- Edit the entry so that the function reference
- has the correct number of arguments.
- 011
- TOO FEW FUNCTION ARGUMENTS
-
- CAUSE:
- Attempt to enter a rule or expression that
- contains a function reference with less
- arguments than the definition of the
- function specifies.
-
- SOLUTION:
- Edit the entry so that each function has the
- correct number of arguments.
- 010
- NUMBER OUTSIDE NUMERIC RANGE OF PROGRAM
-
- CAUSE:
- You attempted to enter an input value or a
- rule with a value whose absolute value is
- greater than 1E308.
-
- SOLUTION:
- Edit the input value or the rule so that all
- values fit the numeric range of MiniTK.
- 012
- COMPLEX ARGUMENT FOUND WHERE REAL ARGUMENT
- EXPECTED
-
- CAUSE:
- Using a pair of numbers (complex number) or an
- expression which returns a complex result as
- an argument of a function requiring real
- number argument(s).
-
- SOLUTION:
- Supply the real number argument to the
- function where it is required.
- 015
- EXPRESSION TOO COMPLICATED
-
- CAUSE:
- You attempted to enter an expression with too
- many pending operations or operands, or a rule
- that contains such an expression.
-
- SOLUTION:
- Edit the expression to reduce the number of
- pending operations or operands and enter the
- new rule or expression.
-
- NOTE:
- The cue indicates the point at which MiniTK
- could no longer handle the expression
- 010
- INVALID COMPLEX COMPUTATION
-
- CAUSE:
- Attempting to enter in a value field an
- expression which includes complex numbers.
-
- SOLUTION:
- Enter only numeric value or symbolic value
- or an expression that evaluates into a
- single value.
- 010
- IF CLAUSE IN EXPRESSION
-
- CAUSE:
- Attempting to enter a conditional clause or
- rule into a field which accepts only evaluable
- expressions.
-
- SOLUTION:
- Enter only an expression which evaluates to an
- acceptable value.
- 016
- MIXED REAL AND COMPLEX OPERANDS
-
- CAUSE:
- An expression must not have both single and
- paired expressions as operands to the same
- operator.
-
- SOLUTION:
- Edit the expression or rule so that it
- contains only single operands or only
- paired (complex) operands.
-
- NOTE:
- As an exception, POWER requires the first
- argument to be a complex number, and the
- second to be a single expression.
- 010
- MISPLACED COMMA
-
- CAUSE:
- Attempting to enter a rule or expression which
- contains a comma between values or names that
- are neither function arguments nor the real
- and imaginary components of a complex number.
-
- SOLUTION:
- Edit the entry to remove any extraneous comma.
- 009
- MISSING SYMBOLIC VALUE
-
- CAUSE:
- Specifying an empty symbolic value, i.e.
- having an apostrophe not followed by name.
-
- SOLUTION:
- Edit the rule or expression so that each
- apostrophe precedes a valid TK name.
- 011
- OUT OF MEMORY
-
- CAUSE:
- MiniTK ran out of memory while loading
- a file or parsing an entry.
-
- SOLUTION:
- Save information with the Storage command
- and then clear some or all of the model
- with the Reset command (/R) or Delete
- command (/D).
- 011
- INVALID RANGE SPECIFIED
-
- CAUSE:
- Attempting to specify a block for blanking,
- moving, inserting or copying which includes
- the top area of the sheet.
-
- SOLUTION:
- When specifying the range (block), do not
- include the fields in the fixed area of the
- sheet.
- 009
- BLOCK INCLUDES FIELD THAT CANNOT BE BLANKED
-
- CAUSE:
- You attempted to blank a block of fields that
- included one or more fields that cannot be
- blanked or left blank.
-
- SOLUTION:
- Leave the field as is.
- 018
- NOT ENOUGH ROWS AVAILABLE ON SHEET
-
- CAUSES:
- - Attempting to insert row(s) in a sheet so
- that it would have more than 32 lines in it
- (16 lines in Rule Sheet).
- - Attempting to use the Move command in a sheet
- that is full.
-
- SOLUTIONS:
- - Delete unnecessary lines, if any, before
- inserting new line(s) or moving line(s).
- - If possible, combine lines to make room for
- new lines.
-
- NOTE:
- - The limitation of a specific number of rows
- in a sheet does not apply to full TK Solver.
- 024
- INCOMPLETE SAVE
-
- CAUSES:
- - When you used the /SS (F4) command it caused
- a disk error. (Disk errors may be caused by
- saving to a faulty disk drive, a damaged
- diskette, a write-protected diskette, or a
- diskette that is full.)
- - You pressed Ctrl-Break during the save
- procedure.
-
- SOLUTIONS:
- - If the error has occurred because the
- Ctrl-Break key was pressed, begin the Storage
- command again and allow the save procedure to
- be completed.
- - If the problem is elsewhere, check the disk to
- determine whether it is full or write-
- protected. Try saving the file to a different
- disk drive or diskette.
- - The incomplete save may have created a partial
- file on the first diskette. Delete this file
- using the /SD command or an appropriate
- command at DOS level.
- 026
- INCOMPLETE LOAD
-
- CAUSES:
- - Attempting to load a damaged file with the /SL
- (F3) command.
- - Attempting to load a TK file which is not
- compatible with the running version of MiniTK.
- - You pressed the Ctrl-Break key during the
- loading procedure.
- - Attempting to load a model that contains more
- lines for the Variable, Rule, or Unit Sheet
- than allowed in MiniTK. (Excess ignored.)
-
- SOLUTIONS:
- - If the file has been damaged, the load is
- completed up to the damaged section.
- Information that has been damaged must be
- recreated.
- - If the error occurred because Ctrl-Break was
- pressed, reset MiniTK (/RAY) and load the
- file again; allow the load procedure to be
- completed.
-
- NOTE:
- The limitation of a specific number of rows
- in a sheet does not apply to full TK Solver.
- 021
- NO FILES FOUND WITH MATCHING FILENAMES
-
- CAUSES:
- You attempted to view the files on the disk
- with the Disk Index when there were either:
- - No files available for the current Storage
- command option
- - No filenames matching the wildcard you
- specified
- - No diskette found in the specified drive
-
- SOLUTION:
- Start the Storage command again and:
- - Use a different wildcard specification to look
- for files on the disk
- - Type a complete filename instead of looking at
- the Disk Index
- - Type a path to a subdirectory containing files
- relevant to the Storage command option before
- looking at the Disk Index
- - Insert a diskette into the specified drive.
- 012
- NOT A VALID STORAGE FILE
-
- CAUSES:
- - Attempting to load a file that is not a valid
- TK model file.
- - Attempting to load a TK model file that has
- been incorrectly changed with a text editor.
-
- SOLUTIONS:
- - Specify a filename for a valid TK model file.
- - Modify the file again with a text editor to
- make it a valid TK model file.
- 012
- OBJECT DELETED; SUBSHEET NO LONGER ACCESSIBLE
-
- CAUSE:
- You attempted an action in a subsheet which
- does not exist anymore. (When a variable is
- deleted, the associated subsheet is also
- deleted, even if the subsheet still appears
- on the screen in the other window.)
-
- SOLUTION:
- Create a new variable. Dive to the new
- subsheet to enter information.
- 010
- FIELD RESERVED FOR OUTPUT
-
- CAUSE:
- Attempting to enter a value in the Output
- field on the Variable Sheet or on a Variable
- Subsheet.
-
- SOLUTIONS:
- - Leave the field as is.
- - Enter a new value in an Input field.
- 012
- OUT OF MEMORY
-
- CAUSE:
- Any action which uses up the remaining memory
- available for running MiniTK results in an
- error and cancellation of the action in
- progress.
-
- SOLUTION:
- Save information with the Storage command
- (/SS) and then clear some or all of the model
- with the /D or /R command.
- 009
- FIELD CANNOT BE BLANKED
-
- CAUSE:
- You attempted to enter blanks in a MiniTK
- field that cannot be left blank.
-
- SOLUTIONS:
- - Leave the field as is
- - Enter a non-blank value
- 015
- ACTION COMMAND (!) HAS NO EFFECT ON THIS SHEET
-
- CAUSE:
- You attempted to use the Action command (!)
- from the Unit Sheet.
-
- SOLUTIONS:
- - Press F9 to invoke the solvers.
- - Go to the Variable Sheet or Rule Sheet and
- press ! .
-
- NOTE:
- In TK Solver Plus, the Action command has
- additional uses in sheets which are not
- available in MiniTK.
- 011
- UNDEFINED VARIABLE
-
- CAUSE:
- You attempted to enter the name of a variable
- that does not exist or does not have a value.
-
- SOLUTIONS:
- - Edit the variable name so that it refers to a
- defined variable name.
- - Press F2 to cancel and try again.
-
- 011
- EXPRESSION CANNOT BE EVALUATED
-
- CAUSES:
- - Attempting to enter an unevaluable expression
- on the Prompt Line during /EE or /EC.
- - Attempting to enter an unevaluable expression
- in a value field (e.g. 0/0).
-
- SOLUTION:
- Enter only valid TK expressions for
- evaluation.
- 012
- DISK INDEX: NOT ENOUGH MEMORY TO CONTINUE
-
- CAUSE:
- Using the Disk Index to view the contents
- of the disk exhausted the memory available
- to MiniTK.
-
- SOLUTION:
- Save all or part of the model with F4 without
- using the Disk Index so you can delete all
- or part of the model to free up memory to
- allow use of the Disk Index.
- 011
- NO FILES SELECTED
-
- CAUSE:
- Pressing ─┘ while pointing to a subdirectory
- in the Disk Index.
-
- SOLUTION:
- Start the Storage command again and, when the
- cursor points to a subdirectory, use the Dive
- command > to see the files stored in that
- subdirectory.
- 010
- VARIABLE DOES NOT EXIST
-
- CAUSE:
- You attempted to enter a nonexistent
- variable for evaluation when using the
- Variable option of the Examine command.
-
- SOLUTION:
- Repeat the command and enter the name of an
- existing variable.
- 014
- NO VARIABLE NAME
-
- CAUSE:
- Attempting to enter a "G" in the Status field
- of a variable when there was no name in the
- Name field.
-
- SOLUTIONS:
- - Enter a rule containing the variable in the
- Rule field on the Rule Sheet before using the
- Status field.
- - Enter the variable name into the Name field on
- the Variable Sheet before using the Status
- field.
- 008
- WARNING: PARSER ERRORS DETECTED DURING LOADING
-
- CAUSE:
- Loading a model with invalid rules. Those
- rules that are left unparsed are marked with
- a % sign in the Status field. These rules
- should be edited and modified before the model
- is used.
- 009
- INVALID CONFIGURATION FILE
-
- CAUSE:
- The MINITK.CFG file is not set up correctly.
-
- SOLUTION:
- Refer to the related topic "Configuration"
- for the correct format and contents of the
- configuration file.
- 013
- INVALID FILE SPECIFICATION
-
- CAUSE:
- A string of up to 200 characters may be
- entered as a filename, but the length and
- validity of a file specification is usually
- determined by the operating system of the
- computer.
-
- SOLUTIONS:
- - Check your operating system manual for a valid
- filename.
- - Enter a valid filename.
- 012
- FILE DOES NOT EXIST
-
- CAUSE:
- Attempting to load a file that does not exist
- in the specified directory.
-
- SOLUTIONS:
- - Specify an existing filename (and a pathname
- if applicable) for the file to be loaded
- - Access the Disk Index to view the files
- available in the current directory and
- subdirectories
- 007
- FILE ALREADY EXISTS
-
- CAUSE:
- Same filename has been used before.
-
- SOLUTION:
- Try entering another filename
- 011
- FILE IS PROTECTED
-
- CAUSES:
- - You attempted a storage action to a filename
- that is protected by the operating system.
- - You attempted a storage action specifying
- a directory rather than a file name.
-
- SOLUTIONS:
- - Specify another filename or drive specifier.
- - Insert another diskette.
- 011
- DISK IS PROTECTED
-
- CAUSE:
- Attempting to save a model to a
- write-protected diskette.
-
- SOLUTIONS:
- - Take the write-protection tab off the
- diskette, so it can be written to.
- - Save to a different diskette which is not
- write protected.
- 012
- DISK SPACE OR DISK DIRECTORY FULL
-
- CAUSES:
- - Attempting to save to a disk that has too
- little space left to store the file.
- - The disk already contains the maximum number
- of files allowed on the disk by your operating
- system.
-
- SOLUTIONS:
- - Delete some files first.
- - Save the file to a different disk.
- 001
- DISK RELATED SOFTWARE ERROR
- 014
- NO SUCH DEVICE OR DEVICE NOT READY
-
- CAUSE:
- Most likely you tried to save a file to a
- drive that was not ready (no diskette, or
- drive door not closed).
-
- SOLUTIONS:
- - Check the disk and the drive.
- - Check the drive specifier in the file
- specification.
- - See your operations manual for further
- information about device names and drive
- specifiers.
- 013
- DISK DATA OR I/O ERROR
-
- CAUSES:
- - You attempted an action that caused a hardware
- read/write error.
- - You attempted to use a worn or damaged
- diskette.
-
- SOLUTION:
- Try another diskette; refer to your hardware
- operations manual for hardware diagnostic
- tests; note this message and contact your
- computer dealer.
- 010
- DISK HARDWARE ERROR
-
- You attempted an action that caused a hardware
- read/write error.
-
- SOLUTION:
- Try another diskette; refer to your hardware
- operations manual for hardware diagnostic
- tests; note this message and contact your
- computer dealer.
- 010
- END OF FILE
-
- CAUSE:
- You attempted to load an incomplete or
- improperly formed file with the Load file
- (/SL) option of the Storage command.
-
- SOLUTION:
- Try creating a new copy of the file and
- repeating the load action.
- 014
- LINE TOO LONG
-
- CAUSES:
- - You attempted to load a file that contains a
- line that is too long.
- - You attempted to load an improperly formatted
- file.
- - A line end character was removed with a text
- editor.
-
- SOLUTIONS:
- - Press Ctrl-Break to cancel the load action.
- - Try to recreate the file and reload it using
- the same machine.
- 010
- FILENAME CONTAINS WILDCARD
-
- CAUSE:
- Wildcards can not be used in filenames in
- MiniTK.
-
- SOLUTION:
- If you want a directory listing when saving
- or loading a file, press ─┘ when prompted
- for a filename.
- 010
- DEVICE IS NOT MOUNTED
-
- CAUSE:
- You attempted a print or storage action to a
- device name that is not connected.
-
- SOLUTION:
- See your operations manual for further
- information about device names and drive
- specifiers.
- 004
- UNKNOWN ERROR
-
- CAUSE:
- This error should not have occurred.
- 007
-
- SOLUTION:
- - Dump the screen to a printer and/or write down
- everything that might relate to this problem.
- - Save the current model to a disk right away
- if possible.
- - Notify UTS (call 1-800-HELP-UTS).
- 006
- SYSTEM ERROR
-
- CAUSE:
- This error message appears as the result of
- an unknown program error that interfered with
- the evaluation of an expression.
- 011
-
- SOLUTIONS:
- - Review the offending rule and other rules and
- input values to see what caused the error.
- - If the error occurred during iteration: change
- the guess value(s) and/or review the strategy
- of using the Iterative Solver.
- - If the error occurred when entering or exami-
- ning an expression: edit the expression or
- examine the ingredients or make a new entry.
-
- 008
- DIVISION BY ZERO
-
- CAUSES:
- - Attempting to enter an expression the
- evaluation of which would involve division
- of a non-zero number by zero.
- - Attempting to divide a non-zero number by
- zero in the process of solving a rule.
- 011
- EXPONENT OVERFLOW
-
- CAUSE:
- Arithmetic operation or function evaluation
- produced a value that is outside the numeric
- range of MiniTK, i.e. its absolute value is
- greater than 1E308.
-
- NOTE:
- Exponent underflow is ignored (the result is
- taken as zero).
- 005
- ARGUMENT ERROR
-
- CAUSE:
- The function argument supplied to the function
- is outside the domain of the function.
- 005
- SQRT: ARGUMENT ERROR
-
- CAUSE:
- Attempt to take square root of negative
- argument.
- 005
- LOG: ARGUMENT ERROR
-
- CAUSE:
- Attempt to take logarithm of zero or negative
- argument.
- 008
- EXPONENTIATION: ARGUMENT ERROR
-
- CAUSE:
- Attempt to perform the direct or inverse
- exponentiation operation (^) with negative
- argument and fractional exponent combined
- (e.g. evaluating (-32)^.2 or solving y=x^2
- for x when y is negative or zero).
- 006
- ASIN: ARGUMENT ERROR
-
- CAUSE:
- Attempt to evaluate arc sine of an argument
- with absolute value greater than 1.
- (SIN inverse may be responsible.)
- 006
- ACOS: ARGUMENT ERROR
-
- CAUSE:
- Attempt to evaluate arc cosine of an argument
- with absolute value greater than 1.
- (COS inverse may be responsible.)
- 007
- ASINH: ARGUMENT ERROR
-
- CAUSE:
- Attempt to evaluate hyperbolic arc sine of
- an argument with absolute value greater
- than 1E154.
- (SINH inverse may be responsible.)
- 007
- ATANH: ARGUMENT ERROR
-
- CAUSE:
- Attempt to evaluate hyperbolic arc tangent
- with an argument with absolute value greater
- than 1.
- (TANH inverse may be responsible.)
- 006
- ATAN2: ARGUMENT ERROR
-
- CAUSE:
- Known argument and function values are not
- consistent with each other, e.g. z=0 and
- y=1 in z=atan2(y,x).
- 007
- VALUE: ARGUMENT ERROR
-
- CAUSE:
- Attempt to use built-in function VALUE with
- an argument which is not a symbolic value, or
- which does not evaluate into a name of an
- existing variable.
- 005
- MOD: ARGUMENT ERROR
-
- CAUSE:
- The second argument of the MOD function
- evaluates to zero.
- 007
- ACOSH: ARGUMENT ERROR
-
- CAUSE:
- Attempt to evaluate hyperbolic arc cosine
- of an argument with absolute value greater
- than 1E154.
- (COSH inverse may be responsible.)
- 005
- LN: ARGUMENT ERROR
-
- CAUSE:
- Attempt to take logarithm of zero or negative
- argument.
- 009
- POWER: ARGUMENT ERROR
-
- CAUSE:
- The second argument supplied to the function
- was not an integer.
-
- SOLUTION:
- Modify the model so that the second argument
- evaluates into an integer.
- 001
- GIVEN: ARGUMENT ERROR
- 010
-
- CAUSES:
- - An argument specifying a variable to be
- examined does not evaluate into a symbolic
- value.
- - Attempt to use two arguments.
-
- SOLUTIONS:
- - Check and modify the arguments.
- - Use 1, 3 or more arguments.
- 006
- ERF: ARGUMENT ERROR
-
- CAUSE:
- Attempt to evaluate an inverse erf of an
- argument with an absolute value greater
- than 1.
- 007
- GAMMA: ARGUMENT ERROR
-
- CAUSES:
- - Attempt to evaluate gamma function of
- zero or negative argument.
- - Attempt to evaluate the inverse gamma
- function of a value less than .886 .
- 001
- KNOWN: ARGUMENT ERROR
- 001
- EVLTD: ARGUMENT ERROR
- 006
- INVALID BOOLEAN ARGUMENT
-
- CAUSE:
- Attempt to evaluate a Boolean function or
- inverse Boolean function of an argument or
- arguments other than 0 or 1.
- 005
- INVALID SYMBOLIC COMPUTATION
-
- CAUSE:
- Attempt to perform a numeric operation on
- a symbolic value, e.g. 3*'p or sin('q).
- 022
- > ITERATION: DEPENDENCY ERROR
-
- CAUSES:
- - The number of independent equations in the
- model is less than the number of unknowns.
- - The error terms generated by guesses become
- too small or too insensitive to small changes
- in guess values.
-
- SOLUTIONS:
- - Check the choice of guess variables and/or
- guess values.
- - Check the number of independent equations vs.
- the number of unknowns; modify the model and/
- or reformulate the problem.
- - Scale the problem up or down; review the
- strategy of using the Iterative Solver.
-
- NOTE: TK Solver Plus with the Comparison
- Tolerance and Typical Value settable on the
- Global Sheet offers additional means to
- control the Iterative Solver.
- 004
- SOLUTION ABORTED
-
- CAUSE:
- Ctrl-Break was pressed during solution.
- 012
- OUT OF MEMORY (during iteration)
-
- CAUSE:
- There is no room accommodate additional
- information generated and used by the
- Iterative Solver.
-
- SOLUTION:
- Save information with the Storage command
- and then clear some or all of the model
- with the Reset command (/R) or Delete
- command (/D).
- 023
- > ITERATION: TOO MANY GUESSES
-
- CAUSES:
- - The number of error terms generated by
- guesses is less than the number of guess
- variables.
- - Some of the error terms are too small (i.e.
- they are within the Comparison Tolerance).
-
- SOLUTIONS:
- - Solve the problem with a reduced number of
- guess variables.
- - Change the guess values.
- - Scale the problem up or down; review the
- strategy of using the Iterative Solver.
-
-
-
- NOTE: TK Solver Plus with the Comparison
- Tolerance and Typical Value settable on the
- Global Sheet offers additional means to
- control the Iterative Solver.
-
- 016
- > INCONSISTENT
-
- CAUSE:
- The marked rule was checked by the Direct
- Solver and found in error. This happens most
- often when all variables in an equation have
- have input values or were evaluated from
- other equations, and the difference between
- the left- and right-hand side is greater than
- the Comparison Tolerance.
-
- SOLUTION:
- - Blank the input value of a variable marked
- 'Overdefined' or some other variable that
- may be responsible.
- - Delete, cancel or edit the offending rule.
- 016
- > OVERDEFINED
-
- CAUSE:
- The marked variable appears in an equation
- that was found inconsistent. The variable
- may be directly or indirectly responsible
- for this condition, which usually means that
- the problem was overdefined.
-
- SOLUTION:
- - Blank the input value of the offending
- variable (if assigned) or of any other
- variable marked 'Overdefined' or some other
- variable that may be responsible.
- - Delete, cancel or edit the rule marked
- 'Inconsistent'.
- 035
- GETTING STARTED
-
- If you have never used TK before, refer to
- the document in the MiniTK folder, and follow
- the tutorial section "How to use MiniTK".
-
- If, on the other hand, you have used TK
- before, you may want to look at some of the
- models that are supplied with the MiniTK
- package; for instance, LOAN.TK. You can
- load the model using the Load command (F3).
- It is also possible to load a model at the
- same time you start up MiniTK. For example,
- from DOS you can type:
- minitk loan ─┘
- which will start MiniTK and then load the
- model LOAN.
- NOTES:
- - Remember that the Help file has to be in the
- current directory to be accessible.
- - MiniTK is compatible with TK!Solver and TK
- Solver Plus, but if you load a model that
- contains objects that cannot be understood
- by MiniTK (e.g. plots, lists, tables, user-
- defined functions, etc.), MiniTK will ignore
- them. Also if you load a model containing
- rules that cannot be interpreted by MiniTK,
- those rules will be marked with a % sign
- (see "Load File").
- - MiniTK can be configured to your computer
- system with a MINITK.CFG file (see
- "Configuration").
- - You may find it helpful to read through the
- rest of the major topics in the Help Index
- box.
- 044
- CONFIGURATION OF MiniTK
-
- MiniTK can be configured by modifying the
- EXAMPLE.CFG text file that is provided with
- the package. This ASCII file contains the
- default settings and can be modified with a
- text editor. The default settings are:
-
- " TK Solver configuration file
- Use Color: Yes
- Slow Redisplay: Yes
- Solid Line Headings: Yes
- Bottom Prompt Line: Yes
-
- USAGE:
- - To change the configuration, edit EXAMPLE.CFG
- and change the "Yes" to "No" for each setting
- that you want to change. Then save the file
- under the name MINITK.CFG.
-
- - If the MINITK.CFG file is not found in the
- current directory, MiniTK will default to the
- values above.
- - If you have a color card, but use a monochrome
- monitor, you should change the "Use Color"
- setting to "No."
- - "Slow Redisplay" set to "Yes" prevents snow
- from appearing when using color cards with
- memory which is not dual-ported. If your
- color card can handle fast redisplay, then
- change this setting to "No."
- - If you use the screen-dump feature (shift
- PrtSc) or the Print command to print parts of
- the model to the printer, and your printer
- cannot print graphics characters, "Solid Line
- Headings" should be set to "No."
- - If you are familiar with the command structure
- of TK and you do not need the assistance of
- the bottom prompt line, you may want to set
- "Bottom Prompt Line" to "No."
- - In TK Solver Plus the above configuration can
- be done by modifying the values on the Global
- Sheet and saving the values directly from the
- program with a "Save configuration" command.
- 053
- LIMITS OF MiniTK
-
- MiniTK represents the central components of
- TK Solver Plus, the equation solvers, complete
- with an automatic unit conversion feature.
-
- The purpose of MiniTK is to offer the PC user
- community at large the taste of rule-based
- programming applied to numeric computation.
- Available in MiniTK are three out of nine
- information sheets:
- Rule Sheet - Variable Sheet - Unit Sheet
-
- Present in TK Solver Plus but omitted here are
- (User-defined) Function Sheet - List Sheet
- Plot Sheet - Table Sheet - Global Sheet
- Numeric Format Sheet
-
-
-
- The names of missing sheets indicate the limits
- of MiniTK: TK Solver Plus works not only with
- single values but also with lists of values,
- it plots the results, it provides spreadsheet-
- like tabular interface, it accepts global
- settings, and it offers numeric formatting.
- Most importantly, TK Solver Plus supports so-
- called user-defined functions that are used
- for handling empirical relationships, blen-
- ding numeric and non-numeric information,
- complementing TK with sequential programs
- and, generally, turning it into an integrated
- and open-ended problem-solving environment.
-
- MiniTK even without all these additional
- features is a powerful equation processor
- ready to handle countless real-life problems.
-
-
-
- MiniTK also has limits on the number of lines
- that can be accessed on its three sheets:
- 1. Maximum of 32 lines on Variable Sheet.
- 2. Maximum of 24 lines on Rule Sheet.
- 3. Maximum of 32 lines on Unit Sheet.
- 4. Maximum of 32 entries in Disk Index.
- (Use subdirectories if you have more than
- 32 files on your disk.)
- In TK Solver Plus these limits are 32000.
-
- Refer to the README.TXT, FTKINTRO.TXT and
- REFCARD.TXT files for information on
- TK Solver Plus and MiniTK.
- 015
- TOP LEVEL COMMANDS
- └──┬─────────────┘
- ├──────── Function Keys
- ├──────── Slash Commands
- └──────── Navigation Commands
-
-
- Move the cursor over one of the Related Topics
- below and press ─┘.
-
- NOTES:
- - If you need help on Help, press F1.
- - If you ever need to get back to this screen:
- Press F1 ─┘ (from within Help).
- Press F1 F1 ─┘ (from MiniTK).
- 019
- FUNCTION KEYS
- ╔═════════════════════╦═══════════════════════╗
- ║ F1: On-Line Help (?)║ F2: Cancel Entry ║
- ╠═════════════════════╬═══════════════════════╣
- ║ F3: Load File (/SL) ║ F4: Save File (/SS) ║
- ╠═════════════════════╬═══════════════════════╣
- ║ F5: Edit (Ctrl-E) ║ F6: One-Window (/W1) ║
- ╠═════════════════════╬═══════════════════════╣
- ║ ║ ║
- ╠═════════════════════╬═══════════════════════╣
- ║ F9: Solve ║ ║
- ╚═════════════════════╩═══════════════════════╝
- USAGE:
- From any sheet, press the desired key and the
- command (command sequence) will be executed.
- NOTE:
- F7, F8, and F10 are for displaying plots,
- displaying tables, and List Solving,
- respectively, in TK Solver Plus.
- 028
- NAVIGATION COMMANDS:
-
- ─ Moves the cursor to the right
- ─ Moves the cursor to the left
- Moves the cursor up one line
- Moves the cursor down one line
- ──▌ Moves the cursor to the rightmost field
- ▐── Moves the cursor to the leftmost field
-
- Home Moves the cursor to the top of the sheet
- End Moves the cursor to the end of the sheet
- PgDn Moves the cursor N-2 lines down
- PgUp Moves the cursor N-2 lines up
- (where N is the number of lines displayed
- in the current window)
-
- = Select Sheet command. It selects the
- sheet to be displayed in the current
- window.
-
- ; Switch command. If two windows are
- displayed on the screen, the Switch
- command moves the cursor between them,
- otherwise it has no affect.
- > Dive command. Brings up a relevant
- subsheet in the current window.
- < Return command. Brings back original
- sheet or subsheet.
- 013
- PROBLEM SOLVING WITH MiniTK
- involves three stages:
-
- 1. Bringing up the model either by loading an
- appropriate TK file or by developing the
- model (i.e. typing in the rules into the
- Rule Sheet).
-
- 2. Formulating the problem (i.e. assigning
- appropriate input or guess values to
- selected variables in the Variable Sheet).
-
- 3. Solving the model by pressing F9.
- 017
- The VARIABLE SHEET
- contains information about the variables used
- in the model. Each row can contain data
- related to one variable.
-
- There are VARIABLE SUBSHEETS containing more
- information about each variable; items entered
- into fields in the Variable Sheet are updated
- simultaneously in corresponding fields in
- Variable Subsheet.
-
- ACCESS:
- - Type =V to display it in the current window.
- - Type /WV from one-window display to display
- it in the second window.
- - Use the Dive command (>) to see the Variable
- Subsheet associated with a specific variable.
- 010
- The RULE SHEET
- contains the equations for a model. Each row
- can contain one equation and its status (and,
- optionally, a comment following a double
- quote, " ).
-
- ACCESS:
- - Type =R to display it in the current window.
- - Type /WR from one-window display to display
- it in the second window.
- 010
- The UNIT SHEET
- contains definitions for conversions between
- units of measurement used in a model. Each
- row in the Unit Sheet defines a conversion
- between two units of measurement.
-
- ACCESS:
- - Type =U to display it in the current window.
- - Type /WU from one-window display to display
- it in the second window.
- 030
- UNIT SHEET FIELDS
-
- FROM Field: Contains the first unit.
-
- TO Field: Contains the second unit.
-
- MULTIPLY BY Field: Contains the unit conversion
- factor, i.e. number of second units equivalent
- to a single first unit.
- If left blank, a factor of 1 is assumed.
-
- ADD OFFSET Field: Contains the value in the
- second unit equivalent to a value of zero in
- the first unit.
- If left blank, an offset of 0 is assumed.
-
-
-
- NOTE:
- MULTIPLY BY and ADD OFFSET fields accept any
- valid numeric value or expression.
-
- EXAMPLES:
- 1. Conversion from degrees Celsius to degrees
- Fahrenheit is defined by a conversion factor
- of 1.8 (may be entered as 9/5) and an offset
- value of 32.
- 2. Conversion from radians to degrees may be
- defined by a conversion factor of 180/pi()
- which evaluates into 57.2957795131 .
- 033
- UNIT CONVERSION
-
- The Unit Conversion feature in MiniTK works as
- follows:
- - Each variable may be optionally assigned a
- Calculation Unit and a Display Unit.
- - All calculations are performed in Calculation
- Units and the input and output values are
- displayed in Display Units.
- - The Display Units are defined in the Unit
- Fields in the Variable Sheet.
- - A Display Unit entered into a blank Unit Field
- also becomes a Calculation Unit.
- - Both Calculation and Display Units may be
- changed in the appropriate fields in the
- Variable Subsheets.
- - When the Display Unit is changed the input or
- output value is converted instantaneously.
- - The conversion is performed according to the
- unit conversion definitions in the Unit Sheet.
-
- NOTES:
- - The assigned Calculation Units must be
- consistent with the usage of the variables in
- the rules.
- - The unit conversion may be defined indirectly.
- For instance, if the conversions in/cm, ft/in
- and m/cm are defined, the conversion between
- ft and m is automatically defined.
- - If the conversion between the Calculation
- Unit and the desired Display Unit is not
- defined in the Unit Sheet, a question mark (?)
- appears in front of the value.
- 036
- The EXAMINE command (/E) has three options:
- Variable, Expression, and Copy.
-
- The VARIABLE option
- allows you to EXAMINE the value of a variable
- when debugging the model or analyzing error
- conditions.
-
- USAGE:
- - Type /EV.
- - Enter variable name and press ─┘.
-
- The EXPRESSION option
- allows you to EXAMINE the value of an
- expression when debugging the model or
- analyzing error conditions.
-
- USAGE:
- - Type /EE.
- - Type in the expression and press ─┘.
- The COPY option
- allows you to copy the field highlighted by
- the cursor onto the Prompt/Error line.
- Depending on contents, this text may be
- evaluated as an expression immediately
- or after editing.
-
- USAGE:
- - Type /EC.
- - Type F5 for editing, if necessary
- - Press ─┘ for evaluation
-
- NOTE:
- - The Expression option or Copy option can also
- be used as a calculator: just type /EE or /EC
- and the expression you want to evaluate.
- 020
- STATUS Field
-
- PURPOSE:
- Shows the status of the variable and may be
- used for changing the status. The default is
- blank. A > symbol indicates that the vari-
- able is involved in an error condition.
-
- SELECTING OPTIONS:
- Type into the Status field the first letter of
- the option you want to apply:
-
- I - current value will be assigned as input
- (equivalent to entering that value in the
- Input field)
- O - current value will appear in the Output
- field
- B - blanks the Input or Output field
- G - current value will be assigned as a guess
- (this is a toggle switch)
- 016
- INPUT Field
-
- DESCRIPTION:
- Contains the input value for a variable.
-
- VALID ENTRIES:
- - A numeric or a symbolic value.
- - A syntactically correct expression that
- evaluates to a numeric or a symbolic value.
-
- NOTE:
- If a variable is assigned units, its value
- appears in the Display Unit. (If the con-
- version between Display Unit and Calculation
- Unit is not defined in the Unit Sheet, a ?
- precedes the displayed value.)
- 008
- NAME Field
-
- DESCRIPTION:
- Contains the name of a variable.
-
- VALID INPUTS:
- - TK name (NO DUPLICATES ALLOWED WITHIN A
- NAME FIELD COLUMN ON A SHEET).
- 017
- OUTPUT Field
-
- DESCRIPTION:
- Contains the output value of the variable if
- the variable has one.
-
- USAGE:
- - MiniTK uses the Output field for displaying
- the solution results.
- - An input value or a blanked (but internally
- held) value may be moved to the Output field
- by typing letter O in the Status field.
- - If a variable is assigned units, its value
- appears in the Display Unit. (If the con-
- version between Display Unit and Calculation
- Unit is not defined in the Unit Sheet, a ?
- precedes the displayed value.)
- 023
- UNIT FIELD, Variable Sheet
-
- defines the Display unit used to display the
- value of the variable.
-
- USAGE:
- - Typing a unit name into a blank Unit field
- ALSO defines the Calculation unit.
- - Typing another unit name changes ONLY the
- Display unit.
- - The Calculation unit may be changed in the
- Variable Subsheet.
- - When you change the Display unit, the
- variable value changes instantaneously
- provided that the conversion between the
- Display and Calculation units is defined
- directly or indirectly in the Unit Sheet.
- If a conversion is not defined, a ? will
- appear in front of the value.
- - Blanking out the Unit field in the Variable
- Sheet will blank out both the Display and
- Calculation unit fields in the associated
- Variable Subsheet.
- 010
- The COMMENT Field
-
- USAGE:
- - Use for commenting your model.
- - Accepts any typeable characters.
-
- NOTE:
- If you want to include or append a comment in
- the Rule Sheet, precede the comment with a
- double quote (").
- 018
- FIRST GUESS Field
-
- DESCRIPTION:
- Contains a blank or the default guess value
- you specify for the variable.
-
- USAGE:
- Serves for automatic assignment of the spe-
- cified value as a guess and initiation of the
- Iterative Solver. It works when the variable
- is not assigned an input value, cannot be
- evaluated by the Direct solver, and is not
- assigned another guess value manually.
-
- VALID INPUTS:
- - A numeric value.
- - An expression that evaluates into a numeric
- value.
- 012
- CALCULATION UNIT
-
- The Calculation Unit may be assigned to a
- variable by:
- - entering its name in the Calculation Unit
- Field of the associated Variable Subsheet, or
- - entering its name into a blank Unit Field in
- the Variable Sheet (in that case it becomes
- a Display Unit as well).
-
- See "Unit Conversion" for the role of
- calculation units in MiniTK.
- 013
- DISPLAY UNIT
-
- The Display Unit may be assigned to a variable
- by:
- - entering its name into the Unit Field in the
- Variable Sheet (if the field is blank, then
- the Display Unit becomes a Calculation Unit
- as well), or
- - entering its name into the Display Unit Field
- of the associated Variable Subsheet.
-
- See "Unit Conversion" for the role of display
- units in MiniTK.
- 019
- The STATUS Field
- shows the status of the rule:
- - A blank indicates a successful solution of
- that rule.
- - An asterisk (*) indicates an unsolved rule.
- - A C indicates that the rule is switched off.
- - An error symbol (>) indicates an error
- during the evaluation of the rule.
- - A % indicates an unparsed rule. The rule
- probably refers to a user-defined function
- that was defined in TK!Solver or TK Solver
- Plus.
-
- USAGE:
- - Place the cursor in the field to display an
- explanatory message on the Status line. If
- there is an error symbol > press F1 for
- a help screen explaining the error.
- - Press C to switch the rule off or on.
- 011
- RULE Field
-
- DESCRIPTION:
- Accepts equations according to the
- conventions for valid TK rules.
-
- NOTE:
- A Rule field can also contain a comment.
- MiniTK regards all text after a quotation mark
- (") in a Rule field as a comment, not subject
- to evaluation by the solvers.
- 030
- COMPARISON TOLERANCE
-
- DESCRIPTION:
- The Comparison Tolerance (CT) and the Typical
- value (TV) serve for checking the consistency
- of rules. A rule is considered satisfied and
- an equation is presumed to hold if either
-
- RELERR ≤ CT or MABVAL ≤ CT * TV ,
-
- where
- relative error RELERR = ABSERR / MABVAL
- absolute error ABSERR = abs(LHE-RHE)
- maximum absolute value
- MABVAL = max(abs(LHE),abs(RHE))
- LHE,RHE are values of left-hand side and
- right-hand side expressions.
-
-
-
- The CT and TV parameters play important role
- in controlling the Iterative Solver and
- terminating the iteration upon successful
- completion.
-
- NOTE:
- In MiniTK CT = .000001 and TV = 1 .
- In TK Solver Plus these parameters may be
- changed on the Global Sheet, in order to
- fine-tune the solvers to specific needs.
- 028
- TYPICAL VALUE
-
- DESCRIPTION:
- The Typical Value (TV) in conjunction with
- the Comparison Tolerance (CT) serves for
- checking the consistency of rules, and, in
- particular, for deciding on successful
- completion of iteration.
-
- A rule is considered satisfied and an
- equation is presumed to hold if
-
- max(abs(LHE),abs(RHE)) ≤ CT * TV
-
- where LHE,RHE are values of left-hand and
- right-hand side expressions
-
-
- If this condition is not satisfied, the
- 'relative error ≤ CT' criterion is used
- for checking the rule consistency.
-
- In MiniTK there is a fixed TV=1.
-
- In TK Solver Plus this parameter may be
- changed on the Global Sheet and thus the
- checking criterion adjusted to the order
- of magnitude of computed values.
- 027
- STATUS LINE
-
- The Status Line is the top line on TK screen.
- It contains the following information (from
- left to right):
-
- - Information related to the current cursor
- position:
- - row number and field label,
- - field name,
- - field contents (e.g. full internal
- representation of a numeric value
- with up to 16 significant digits).
-
- - Memory Indicator, approximate amount of
- unused memory, in kbytes.
-
- - Solution Indicator, shows the status of
- the Variable Sheet:
- OK -- indicates no change in the Variable
- or Rule Sheet since the last solution,
- i.e. the displayed output values may
- be trusted,
- F9 -- there has been a change, and the Solve
- command F9 should be invoked to
- restore the integrity of the sheets'
- contents.
- 012
- PROMPT/ERROR LINE
-
- The Prompt/Error Line is the second line on TK
- screen. It serves for
-
- - displaying error messages and prompts,
- - indicating which solver is being used,
- - entering names of files to be loaded, saved
- or deleted,
- - specifying variables or expressions to be
- evaluated with the /E commands, and
- - typing in other command-related information.
- 030
- WILDCARDS or GLOBAL FILENAME CHARACTERS
-
- are special characters you can use within a
- filename and extension to specify a group of
- files to be displayed in the Disk Index.
-
- ? indicates that any character can occupy the
- given position (question mark in TK must
- be typed by pressing Ctrl-Q because ?
- invokes Help),
-
- * indicates that any character can occupy the
- given position and all the remaining
- positions in the filename or extension.
-
-
-
-
-
- EXAMPLES:
-
- 1. F3 rlc??a ─┘ will bring up RLC01A.TK,
- RLC05A.TK and RLC23A.TK in the Disk Index,
- and will ignore RLC01B.TK, RLC23B.TK and
- RLC01AB.TK .
-
- 2. F3 rlc0* ─┘ applied to the same directory
- will bring up RLC01A.TK, RLC05.TK,
- RLC01B.TK and RLC01AB, and it will ignore
- RLC23A.TK and RLC23B.TK .
- 030
- ARITHMETIC OPERATIONS
- are (in order of precedence):
-
- ^ exponentiation
- + - unary plus and minus
- * / multiplication and division
- + - addition and subtraction
-
- NOTES:
- - Operations at the same precedence level are
- performed from left to right, except for
- exponentiation operations, which are performed
- from right to left.
- - When arithmetic and relational operators are
- combined, the relational operators have the
- lowest precedence level.
- - The order of operations may be controlled by
- parentheses.
- EXAMPLES:
- 1. 2 + 3 * 4 evaluates into 14
- 2. (2+3) * 4 evaluates into 20
- 3. 4e150 / 2e180 * 3e200 evaluates into 6e170
- 4. 4e150 * 3e200 / 2e180
- causes exponent overflow
- 5. 4 ^ 2 ^ 3 evaluates into 65536
- 6. (4^2) ^ 3 evaluates into 4096
- 7. 3 > 2 > 4 evaluates into 0
- 8. 3 > (2>4) evaluates into 1
- 9. 2 < 3 * 4 evaluates into 1
- 10. (2<3) * 4 evaluates into 4
- 018
- INDETERMINATE EXPRESSIONS
-
- When evaluating expressions, the values of
- operands or function arguments may be available,
- but the information they carry may be insuffi-
- cient to determine the result. There are seven
- such situations in TK:
-
- x = 0/0 0 = 0^x
- 1 = 1^x x = 0^0
- 1 = x^0 x = atan2(0,0)
- x = atan2d(0,0)
-
- (the unknown x cannot be evaluated from any of
- these equations)
-
- TK ignores an indeterminate expression when
- encountered, and leaves the rule 'unsatisfied'.
- 016
- SCREEN COMPOSITION
-
- The MiniTK screen consists of
-
- - Message Area: Top two lines called
- Status Line and Prompt/Error Line.
-
- - Information Area: Lines 3 through 24, may
- contain one or two windows with TK sheets.
- The windows may be split or unsplit using
- the Window command, /W, and the sheets may
- changed using the Select Sheet command, = .
-
- - Bottom Prompt Line (optional, may be turned
- off by an appropriate setting in the
- configuration file).
- 022
- ITERATION COUNT
-
- The steps performed by the Iteration Solver are
- counted and the current step numbers are
- displayed during the iteration on the Prompt/
- Error Line.
-
- In MiniTK the Maximum Iteration Count is set to
- 10. If the Iterative Solver does not find a
- solution within 10 steps, it stops, MiniTK
- beeps, and the latest guess values and the
- flag G remain in the Input and Status fields
- respectively. You may press F9 again. If the
- Iterative Solver just needed more steps, there
- is a chance that it will eventually converge to
- the solution. (It is more likely, however, that
- the iteration diverged, and you should try again
- with different guess values and/or variables.)
- NOTE: In TK Solver Plus the Maximum Iteration
- Count may be set on the Global Sheet
- according to the needs of a particular
- problem.
- 018
- CONVERGENCE FACTOR
-
- is displayed during iteration on the Prompt/
- Error Line. It shows the progress of the
- Iterative Solver toward the solution.
-
- The Convergence Factor is defined as
-
- ln ( ABSERR / (CT*TV) )
-
- (see explanation of terms in "Comparison
- Tolerance")
-
- If there are more guesses and error terms than
- one, the maximum ABSERR (i.e. the bottleneck)
- is used. The iteration is usually considered
- successful when the convergence factor falls
- below zero.
- 015
- QUESTION MARK, ?
-
- The Question Mark's main role in MiniTK is
- invocation of Help (though, pressing the
- function key F1 serves the same purpose).
-
- The most frightening event for the uninitiated
- is the appearance of ? in front of an input or
- output value in the Variable Sheet. It indi-
- cates an error in the unit specification or a
- missing unit conversion (check the Unit Sheet!).
-
- If you wish to use the character ? (e.g. in a
- comment), you have to type it by pressing
- Ctrl-Q, because typing ? invokes Help.
- 083
- S O L V E R S
-
- MiniTK and other versions of TK Solver program
- employ two major mechanisms for solving mathe-
- matical problems numerically:
-
- - the Direct Solver using a consecutive sub-
- stitution procedure, and
-
- - the Iterative Solver using a modified Newton-
- Raphson procedure on top of the Direct Solver.
-
- The main strength of TK is detecting and per-
- forming automatically any inverse operations
- required in the process of solving equations
- or satisfying rules and constraints. This
- technique covers what is commonly known as
- 'backsolving' or 'goal seeking'.
- EXAMPLES:
- 1. If y = sin(x) is stated and y is known,
- TK takes arc sine of y to evaluate x .
- 2. If ln(a) = b + c*d is stated (spelling
- out addition and multiplication), and a,b,c
- are known, TK uses subtraction and division
- to evaluate d=(ln(a)-b)/c .
- 3. If or(sick,tired)=and(home,rest)
- is stated, and "tired" is known to be 1
- (true), then the Direct Solver infers that
- one should stay home=1 and have rest=1 ;
- it doesn't matter "sick" is known to be 1
- or 0 , or if it is unknown.
-
- TK action in most applications comes down to
- solving one or more equations, linear or non-
- linear, algebraic or transcendental (hence the
- epithet 'equation processor').
-
- Typically there are m independent equations
- with n unknowns (m<n). Possible outcomes of
- applying the solvers are as follows:
- - Values of n-m variables are given, the
- Direct solver solves for m unknowns.
- - The same, the Iterative Solver solves for
- m unknowns.
- - The same, solution not completed because of
- indeterminacy condition.
- - The same, solution not completed because of
- domain error.
- - The values of less than n-m variables given,
- solution is incomplete.
- - The values of more than n-m variables given,
- one of the equations becomes inconsistent,
- and the solution process is terminated.
-
- EXAMPLES (in order of the above cases):
- Assume two equations with four variables:
- a * (.5+x)^2 = sin(y/2)
- b * (y-pi()) = ln(x)
- 1. x=1.5 and y=2 assigned as inputs; Direct
- Solver returns a=.21036775 and b=-.3551749.
- 2. a=.2 and b=-.5 assigned as inputs and x
- is made guess = 1.5; Iterative Solver returns
- x=1.6085001 and y=2.1909884.
- 3. a=4/9 and y=pi() assigned as inputs; Direct
- Solver evaluates x=1 from the 1st equation,
- and the 2nd is ignored because of b=0/0.
- 4. a=pi() and y=4/9 assigned as inputs; Direct
- Solver returns x=-.2351325 from the 1st eq-n,
- and solution stops on attempt to take ln(x).
- 5. only a=pi() assigned as input; nothing is
- evaluated.
- 6. b=-.5, x=1.5 and y=2 assigned as inputs;
- Direct Solver evaluates a=.21036775 from the
- 1st equation and stops on inconsistency error
- in the 2nd.
-
- The solvers form the basis of TK's declarative
- nature. They are complemented in TK Solver Plus
- by user-definable procedures, i.e. sequential
- programs for specific tasks that are hard or
- impossible to accomplish in the purely
- declarative MiniTK (e.g. solving differential
- equations).
- 014
- ZERO-BY-ZERO DIVISION
-
- is one of seven indeterminate expressions that
- are ignored when encountered by the solvers.
-
- The 0/0 constructs may be used as an alternative
- to conditional rules.
-
- EXAMPLE:
- a + b = GIVEN('x,'y,c*d,0/z)
- (if x and y are assigned input values then
- the rule is a+b=c*d; else, if z<>0 then the
- rule is a+b=0, and if z=0 then the rule is
- ignored and bypassed by the solvers)
- 017
- B E E P
-
- indicates that MiniTK was unable to follow a
- command and/or complete an action because some
- error conditions developed, or because the
- command or action was terminated by pressing
- F2 or Ctrl-Break.
-
- In most error situations MiniTK displays an
- error message, and provides additional explana-
- tion when F1 or ? is pressed for Help.
- In some cases (such as trying to move the cursor
- beyond the sheet boundary or MiniTK limits) it
- just beeps.
-
- When in Help, your illegal actions produce a
- deeper 'thud'.
- 066
- TROUBLESHOOTING
-
- Most of the problems encountered when using
- MiniTK are not caused by the program doing
- something wrong, or even by lack of TK skills
- on your part (that, anyway, should be remedied
- by resorting to the Help frequently).
-
- More often than not trouble comes from half-
- baked or unfit mathematical models and/or
- infeasible input data or constraints. In fact,
- TK may be useful in sorting out mathematical
- and other fallacies.
- EXAMPLE: How long would it take to repay a
- $100,000 loan at 10% interest with a monthly
- payment of $500? You can protect TK and your-
- self from such absurd questions by letting your
- model check for an infinite payment term.
- Here are a few troubleshooting hints:
- - Check the balance of number of equations,
- total number of variables, number of inputs
- and number of unknowns. There is no way (TK
- or other) to solve for more unknowns than the
- number of independent equations.
- - Mimic the Direct or Iterative Solver path to
- find out what unknown is evaluated by what
- equation.
- - Use toggle switch C (in the rule's Status
- field) to 'turn off' the selected equations
- and isolate trouble spots.
- - Add error terms to equations showing incon-
- sistency, and test them.
- - Use the Examine (/E) command to check on
- variables and expressions.
- - Beware of the hard-to-predict effects of
- conditional rules.
- - Pay serious attention to the selection of
- guess variables and choice of guess values.
- - Consider two or more roots or solutions to
- your problem when applicable.
- - Remember that the sqrt function returns a
- positive root although the negative one may be
- appropriate; likewise inverse trigonometric
- functions return principal values.
- - Try to avoid the iteration process straying
- into the regions of argument errors (easier to
- say than to do; it may take some luck and some
- sleuthing assisted by TK itself, i.e. turning
- the knowns and unknowns around, checking the
- error terms at the trouble spots, trying
- alternative ways, etc.).
- - Beware of divergence when using the Iterative
- Solver. Refer to the MiniTK follow-up package
-
- (see FTKINTRO.TXT) or numerical analysis lite-
- rature for information about inner workings
- of the Newton-Raphson procedure.
-
- The full TK Solver Plus with list solving,
- graphics, procedure functions, interactive
- tables, etc. is much better equipped for
- thorough diagnostics and efficient trouble-
- shooting than MiniTK. TK Solver Plus offers, in
- particular, a variety of alternatives to the
- built-in Iterative Solver for ill-behaved
- problems.
- !help
- !!S
- /unknown
- !!?
- c101
- "(<
- c102
- ")"
- c103
- "&J
- c105
- ".K
- c24
- ".'
- c26
- "6I
- c28
- "6I
- c30
- ")"
- c31
- "'V
- c33
- "&$
- c37
- "&J
- c39
- "6I
- c400
- !],
- c401
- !],
- c403
- !],
- c404
- !],
- c405
- !],
- c406
- !_L
- c407
- !`=
- c408
- !`L
- c409
- "!@
- c410
- ""=
- c411
- !],
- c413
- "&$
- c414
- "&J
- c415
- "'V
- c416
- "(<
- c417
- ")"
- c419
- "//
- c420
- ".'
- c422
- "6X
- c423
- "6I
- c424
- ".K
- c426
- "//
- c427
- "16
- c429
- "4-
- c43
- "16
- c430
- "4O
- c431
- "51
- c433
- "5S
- c436
- "6I
- c437
- "6I
- c438
- "6I
- c439
- "6I
- c440
- "6X
- c441
- "6X
- c442
- "6X
- c443
- "6X
- c47
- "2@
- c48
- "5S
- c50
- "5S
- c51
- !\G
- c52
- "16
- c54
- "2@
- c55
- "4O
- c56
- "51
- c63
- !#.
- c91
- "6X
- c92
- "6X
- e1
- !;#
- e10
- !>?
- e104
- !L%
- e106
- !L4
- e11
- !?'
- e12
- !?O
- e13
- !@+
- e14
- !(_
- e15
- !@S
- e16
- !A3
- e17
- !A[
- e18
- !B;
- e19
- !C5
- e2
- !;2
- e21
- !CU
- e22
- !D1
- e3
- !<$
- e34
- !D@
- e36
- !E&
- e38
- !EI
- e4
- !*H
- e41
- !F/
- e42
- !FQ
- e49
- !G3
- e5
- !+)
- e53
- !GS
- e57
- !H5
- e58
- !HD
- e59
- !*9
- e6
- !+)
- e60
- !*H
- e601
- !LW
- e602
- !M7
- e603
- !MW
- e604
- !N7
- e605
- !NW
- e606
- !O&
- e607
- !OF
- e608
- !OZ
- e609
- !P)
- e61
- !HS
- e610
- !P8
- e611
- !PG
- e612
- !PV
- e613
- !Q%
- e614
- !QE
- e615
- !QT
- e62
- !I"
- e64
- "*B
- e65
- !*H
- e66
- !*H
- e67
- !IE
- e68
- !IT
- e7
- !<V
- e701
- !R(
- e702
- !R(
- e703
- !R<
- e704
- !RP
- e707
- !R_
- e711
- !S3
- e712
- !SG
- e713
- !S[
- e714
- !T/
- e715
- !TC
- e716
- !TW
- e717
- !U+
- e718
- !U?
- e719
- !US
- e720
- !V"
- e724
- !V6
- e725
- !VE
- e726
- !VY
- e727
- !W(
- e728
- !W<
- e729
- !WP
- e73
- !J4
- e730
- !X$
- e731
- !X8
- e733
- !R(
- e734
- !XL
- e735
- !X[
- e736
- !Y?
- e737
- !Z%
- e738
- !Z4
- e739
- !ZC
- e740
- ![)
- e75
- !JT
- e76
- "0A
- e77
- "0A
- e8
- !=6
- e81
- "0A
- e82
- "0A
- e83
- !K4
- e84
- "?&
- e88
- !KC
- e89
- "7'
- e9
- !=^
- e90
- !*9
- prr
- "?F
- prs
- "?&
- pua
- "@'
- puf
- "@'
- pum
- "@'
- put
- "@'
- pvc
- ">1
- pvi
- "7K
- pvn
- "8N
- pvo
- "9D
- pvs
- "7'
- pvu
- ":(
- pvvc
- ">1
- pvvd
- ";L
- pvvf
- ">@
- pvvi
- "7K
- pvvo
- "9D
- pvvs
- "7'
- pvvu
- "=)
-