0AAny integer number with up to 32 Bit can be converted to or from Hex number format.
A number is considered to be in the Hex format if it is preceded by the "&" sign.
Conversion to the Hex format is accomplished by using "=&".
Example Result
&A 10
10=& &A
&FFFFFFFF -1
&7FFFFFFF 2147483647
Table1
title
Arial
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Table1
ColA1
ColB1
ColA2
ColB2
Index1
ColA1
AFORMULARY can work either with the period "." as a decimal delimiter or with the comma "," as in the German system.
This is accomplished by changing the System Setup International/Number accordingly! BUT: You also have to change in all expressions in the database to either "." or ","!
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
About Formulary
AThe program tries to find symbols according to the following strategy:
1) full upper AND lower case
2) first character as a scaling factor, remaining as 1)
3) either upper OR lower case
4) first character as a scaling factor, remaining as 3)
5) symbol starting the name (symbol*)
6) symbol within the name (*symbol*)
If more than one record are found a selection list will be built up!
Ause the pen in the following windows:
Entry Position cursor accordingly.
Result/Log Reenter selected "Input=Result".
Plot Calculate and show curve points.
Statistics Put selected values into the Entry,
Shift-Tap closes.
Toolbar Select a function accordingly.
ving it a try!
GDThis program is SHAREWARE!
You have the possibility to test the program for a certain time (14 days) with certain limits in a demo mode. If you consider the program useless, simply delete it. If you want to continue to use the program, I ask you for a little contribution (see About..). I will send you a personal key (preferable via email) which allows you to work with the program unlimited.
Please do the following:
-call "About" in the menu of the program
-open the registration dialog with "ENTER" (if in Demo-Mode) for all needed informations.
-send me the amount shown there (in DM or equivalent), directly as a bill throuh post mail (is propably the cheapest and save enough!) or send it to my account.
-IMPORTANT: Send me also your name, under which you would like to register the program and the "SerialNr" (number), which is given in the dialog.
-Enter in "Owner" your name (see above) and in "Key" your personal key (delivered by me) and your program should immediately turn into a full working version.
The program can (should) be given away only as demo versions (without key).
`APrefix Name Factor
Y Yotta 10**24
Z Zetta 10**21
E Exa 10**18
P Peta 10**15
T Tera 10**12
G Giga 10**9
M Mega 10**6
k Kilo 10**3
h Hekto 10**2
e Deka 10**1
d Dezi 10**-1
c Zenti 10**-2
m Milli 10**-3
Mikro 10**-6
n Nano 10**-9
p Pico 10**-12
f Femto 10**-15
a Atto 10**-18
z Zepto 10**-21
y Yocto 10**-24
Statistics3
Note Fonts & Style<
About Form
Database
Date&Time
Disclaimer
Entry fiel
Equations
Expression
Favourites
Hex Conver
Note Fonts
Number For
OPL Functi
Other Func
Plots
Preference
Registrati
Scaling fa
Search alg
Special Va
Statistics
Toolbar
What's new
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
;BTHE AUTHOR SHALL NOT BE HELD LIABLE IN ANY WAY FOR ANY DAMAGE THAT MAY OCCUR TO YOU OR YOUR SYSTEM AS A RESULT OF USING THIS PROGRAM OR OTHERWISE!
Each program can have errors (sorry)! Of course I will try to get rid of these in future versions. Also I will try to improve and extend the functionality of the programs, as far as I can. Registration is of course also valid for these future versions.
Please feel free to contact me if you found an obvious error (Sometimes its really a bug, not a feature!) and to send me all your proposals for improvement.
Thank you!
Ause the pen in the following windows:
Entry Position cursor accordingly.
Result/Log Reenter selected "Input=Result".
Plot Calculate and show curve points.
Statistics Put selected values into the Entry,
Shift-Tap closes.
Toolbar Select a function accordingly.
filled up 56.3 Litres, then enter in field "Litres/km": "56.3/400").
TEExpressions will always be resolved to the standard units (SU). If you want the conversion to some specific symbols (units), you can simply write an equation with the two expressions "source"="target":
Entry: 10 mile/h = knot
Answer: 10 mile/h = 8.689 knot
Entry: 1 acre = yard**2
Answer: 1 acre = 4840 yard**2
Entry: 1000 Joule = kWh
Answer: 1000 Joule = 2.77_e-06 kWh
A more complex example:
I drive with my bicycle (total mass of 90kg) up on a hill (height 550m). How much energy (friction neglected) is needed for this?
Entry: 90 kp*550m = {energy is power*length; power=mass*acceleration}
As you can see, it is only important to place the same (or equivalent) dimension on both sides of the equation (e.g. energy or price). Of course, all the information has to be somewhere in the database, but the number of combinations are endless.
The internal representation is seconds since 1.1.1970 0:0:0 and therefore any (reasonable) calculations with Date&Time are possible.
Entry format is "Day.Mon.Year Hour:Min:Seconds".
The range for dates is 1.1.1970..1.1.2100. If you leave out any part it will be filled with the current time and date.
To force conversion to a Date simply enter "=..".
To convert to Date&Time enter "=::".
Example Result (may be different!)
1:20 985137600 s (since 1.1.1970 0:0:0)
1:20 = :: 21.3.2001 1:20:0 (conv. to date)
1..2000 =.. 1.3.2000 (curr. Month)
..=.. 21.3.2001 (curr. Date)
:: = :: 21.3.2001 21:46:33
Add 100 days to a date.
1.3.2001+100d=.. 9.6.2001
Imagine going a distance of 255km from now on ("::") with a speed of 55mph. At what date&time would you arrive?
::+255km/(55mph) = :: 22.3.2001 0:49:22
NOTE: If you did set "Target=Entry" mode, you don't have to explicitely enter your target unit!
FDC=Cntrl (Strg); S=Shift; F=Fn;
Enter evaluate entry and automatically convert to SU (if not stated explicitely otherwise). If entry is empty, open current record as table dialog.
S-Enter show current record (no evaluation as in table dialog). This is useful to see how the record actually looks like.
C-Enter do NOT automatically convert to SU, use units as in entry!
CS-Enter open Edit-Memory dialog.
Left,Right advance cursor in entry
Right if cursor is at most right entry position, start enter basic operators (+-
S-Left,Right advance and select
C-Left,Right advance to words
F-Left,Right advance to Pos1,Last
Down,Up select next,previous "entry=result"
S-Down,Up select next,previous "entry"
F-Down,Up select last,first "entry=result"
SF-Down,Up select last,first "entry"
C-Down,Up set next,prev record as current
FC-Down,Up set last,first record as current
Tab Clip Entry for new Input (see equ. Menu command!)
S-Tab Swap current Input=Result
Del Delete left character
S-Del Delete right character
Esc clear entry, reenter last entry
C-a..z see Menu-Hotkeys
C-A..Z see Menu-Hotkeys
.Da=ABS(x)
get absolute value
a%=ASC(a$)
get code of first character of text a$
a$=CHR$(a%)
get character with code a%
s&=DATETOSECS(y%,m%,d%,h%,m%,s%)
get seconds since 1.Jan.1970; 00:00
d$=DAYNAME$(d%)
convert daynumber to string
d&=DAYS(day%,month%,year%)
get days since 1.Jan.1900
d%=DOW(day%,month%,year%)
day of week (1=monday..7=sunday)
between 1900..2155
h$=HEX$(h&)
get hex string of number h&
i&=IABS(x&)
get absolute value of x&
i&=INT(x)
get integer part of floating number x
b$=LEFT$(a$,x%)
get x% first characters of string a$
a%=LEN(a$)
get number of characters of string a$
a%=LOC(a$,b$)
get position of text b$ in a$
b$=LOWER$(a$)
convert all characters to lower case
m$=MID$(a$,x%,y%)
get y% characters starting at x%
m$=MONTH$(m%)
get name of m%th month
r%=RANDOM:(x%)
x%<1: reseed random generator
x%=1: get random number 0..<1
x%>1: get random number 1..x%
r$=REPT$(a$,x%)
get string with x% times a$
r$=RIGHT$(a$,x%)
get x% last characters of a$
u$=UPPER$(a$)
get all characters in upper case
w%=WEEK(day%,month%,year%)
get number of week in year
Swiss
Swiss
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
CWhen you start FORMULARY you will be presented with an empty entry field. This is where you enter your expression for evaluating or plotting or you simply enter the name of your Table, Equation or Note record to be opened (see also TUTORIAL), e,g:
inch open as table
3 inch evaluate
If the expression (or equation) can be immediately resolved you will get the result in the entry field for further calculations.
If the symbol relates to a table or equation record, this record will be loaded, analyzed and presented in a separate dialog. You enter there your values for recalculation. All values here can also be entered as arithmetic expressions (in the syntax of OPL!). The program recalculates everything to simple numbers. Therefore you could enter for a value also the raw data (e.g. in the table of gasoline consumptions, driven 400 km, filled up 56.3 Litres, then enter in field "Litres/km": "56.3/400").
r$=RIGHT$(a$,x%)
get x% last characters of a$
u$=UPPER$(a$)
get all characters in upper case
w%=WEEK(day%,month%,year%)
get number of week in year
.Z see Menu-Hotkeys
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Ro2
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
yBYou can put any string into a list of up to ten favourite entries, which can then be called and executed directly from the Toolbarbutton "Favs". This can be the name of your favourite table, a plot equation or any expression you want to have handy.
To put a string into a specific position of the list, do the following:
1) Simply write the string into the entry field.
2) Select the menu "Edit/Favourites" (Shift-Cntrl-G).
The list with all the favourites opens and a blinking note with the message "Set: <entry string>" comes up.
3) Tap into any of the ten positions where you want your new favourite entry to appear. Thats it!
AThe functionality of FORMULARY
can be extended by the user! Write more complex functions or even programs in OPL and call them directly from FORMULARY after they are loaded with "Load OPL".
Functions which return numbers, can be used anywhere in the entries. They even can be called from the records.
abc:("abc",a,b..)
abc%:("abc",a,b..)
abc&:("abc",a,b..)
Functions which return text, can only be called directly in the entry.
abc$:(text$)
do not use quotation marks (") here!
CFORMULARY declares some special variables which can also used by the user in any expression, equations (e.g.: y=3*x+M3) or for initial values:
Memories: M0..M9
These are general purpose variables which can only altered through the Menu/Edit/Memories dialog. These variables will be saved and recalled on restarting the program.
Field Results: F1..F8
These are always set for each field of the last closed Table or Equation dialog.
It allows to link different dialogs via their values! Note that you can always use these variables in the formulas and in expressions for initial values (e.g. "...; F2).
Statistics: These variables are only meaningful after running the Statistic function!
S0=N Number of samples
S1=Sum Sum of values
S2=Sum2 Sum of squared values
S3=Min Minimum value in series
S4=Max Maximum value in series
S5=Mean Mean value = Sum/N
S6=Var Variance of samples.
S7=StdDev Standard Deviation
Times New Roman
Swiss
Swiss
Swiss
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
BA Statistics module can be used to monitor.results and to generate statistical values.
After calling up the window and set there the On/Off button, all numerical values which are entered directly or which are generated otherwise (e.g. through plots) and be logged in the Result window will be accumulated. Text and Units are ignored!
Accumulation takes place also if the Statistics window is not visible!
Tap the Reset button to clear all values and to reset to the initial state (N=0).
(See also: Special Variables)
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
~EFORMULARY is a SYMBOL CALCULATOR.
You calculate with numbers but also with any symbols or units, eg. 'inch', '10 N m/s2', '1h+30min', ...
FORMULARY is a UNIT CONVERTER:
Any unit expression can be converted to any other combination of units. Derived symbols (or units) like 'inch3' (cubic inch) are handled by the program itself, also any scaling factors like 'k' (kilo=1000). You enter symbols like '10 cm2' (means 10 square centimeters) and convert to any other unit expression by typing the target unit expression (eg.'12 Joule/h=cal/s').
FORMULARY shows DYNAMIC TABLES:
Simply arrange corresponding values or value ranges in a table record. Calling up this table and changing any value in this table will recalculate all other table values accordingly (e.g. currencies).
FORMULARY handles COMPLEX EQUATIONS:
You enter any formula with all corresponding transformations into an equation record and you will be able to do repetetive recalculations from now on very easily (eg. Future_Investment).
FORMULARY draws PLOTS:
Enter any formula, define the range and get a x-y plot with automatic scaling and labeling (eg. y=exp(x)+3; x=-1..10).
FORMULARY includes NOTES:
Like in any formulary, calculations refer to specific informations (constants, measuring values, ...), which are collected in additional records.
Authors:
Peter von Walter
email: vwalter@physi.uni-heidelberg.de
Explore and have fun!
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
BUse the following buttons:
Favs A list of up to ten text strings (names of records, conversions, plots, ...) can be placed here (see Favourites!). Selecting one of the items immediately enters it into the entry field!
Win Select window:
Statistics.
Find Same as Menu/Records/Find.
Opens Select dialog first if there is already a selection list from the last Find.
Otherwise opens Find dialog to build up a list, which conforms to your search criteria.
Enter field (or <any>) to be searched.
You can apply wildcards like * for any number of characters or ? for one character.
Prefs Select Preferences for:
Calculator
Plot
(may not be seen on Revo!)
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
EAn expression can be any arithmetic expression, combined from constants, symbols and operators ("*", <blank>, "/", "**", "+" or "-").
Symbols are defined through the names of the records in the database and evaluate to the informations given in the data fields.
Note: if you place a Table, Equation or Note record in an expression, the evaluation will be interrupted until you select a specific (and meaningful) value!
The multiplication operator <blank> is the same as "*", so you can simply write "3 cm" (or even "3cm" if nonambiguous).
NOTE: e,g, the formula "1/3cm" is NOT equivalent "1/(3cm)" but will be evaluated as "(1/3) * cm"! Please use the brackets to clearify the precedence of order.
The exponential operator "**" can also be ommited after a symbol (like m**3 = m3). With numbers you can substitute "e" for 10** (e.g. 3*10**4 = 3e4).
The symbol 'PI' or 'pi' will be taken as 3.14...
Symbols with following brackets, like "sin()", will be seen as functions and evaluated according to the OPL functions.
Expressions can be ordered (also hirarchic) in brackets ().
All scaling factors (c.., k.., ...) ahead of units are handled by the program itself (see Scaling Factors).
Valid Examples:
13+4*10
123e10 kg
3m 3kg
m3/kg
360/(pi*2.3456)
nautical_mile/h
sin(3)
3kg+3g
Temperature
Currencies
Unvalid Examples:
3m3kg {ambiguous: 3m 3kg or 3m3 kg}
sin(3kg) {makes no sense}
3kg+3m {types do not match}
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
BIt is possible to change the font and the style of each line of each field individually. However do choose a font size only once in the Info field!
Font and Style control is through switches which are specific letters and can be placed ahead each line until a special delimiter character "
" (=Cntrl+173) is reached. The following switches can be used :
N set Style to normal (no attribute)
B set Style to bold
U set Style to underline
K set Style to italic
I set Style to inverse
A set Font to Arial
C set Font to Courier
T set Font to Times
1..8 set Font size (8..32)
Combinations as feasible are possible!
e.g.:
This is the text in Arial11, Bold & Underline
Times New Roman
Times New Roman
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
IFile
Open file with Units-, Tables- and Equations records. This file can either be a standard DATA data file or an OPL-created database.
For DATA based files, these only can be modified by DATA. Switch to DATA for browsing and editing. Return with exiting (Cntrl-E) DATA.
Open/Close a text file for logging. Text which appears in the Result/Log window will also be written to this file.
Save all setups and terminate the Formulary program.
Delete and copy the selected text to the clipboard.
Copy the selected text to the clipboard.
Paste
Put the content of the clipboard to the cursor or replace with the selected text
Clip "a=b" to "a" for a new entry.
Further clip positions cursor ahead of "a"!
"Input = result" will be swapped.
Memories
Open Dialog for editing global memories M0..M9. Can be used anywhere by their names.
Favourites
Set current record to selected position in list of favourites.
Clear
Clear the content of the calculator window or the plot window respectively.
Toolbar
Toggle the toolbar on and off. When the Plotwindow is visible, the last plot will be redrawn accordingly.
Window
Select window:
Plot
Statitistics
Zoom In & Out
Changes font size in three steps.
Records
Group
List all groups of all records for selection.
Opens Select dialog first if there is already a selection list build from previous Find. Otherwise the Find dialog will be opened and you can enter a searchstring.
Select a specific field (or <any>) to be searched.
You can apply wildcards like * for any number of characters or ? for one character.
Open current record as a table with evaluation.
Open current record without evaluation. Useful to see how a record really looks like.
Functions
Load OPL
Select compiled (*.opo) OPL file with user defined functions (see OPL Functions).
Enter template for trigonometric functions e.g. sin()
Enter template for exponential functions e.g. 10**()
Enter template for logarithmic functions e.g. log()
Enter template for auxillary functions e.g. a!=Fac:(a)=1*2*..*a
Function '()' is only for ease of entering brackets!
'Plotfunction' (if defined)
Enter template for the current plot function.
Special
Report
Evaluate every unit in the database and check for consisteny.
About
Gives information about the version of the program, the author and how to register!
Prefs
Enter preferences for:
Calculator and Plotter.
Enter the accompanying help file (this!)
ETo generate a plot of a function you have to enter the equation with at least additional parameters for the range of your independent variable and optionally the fixed range of your dependent variable. Different optional switch parameters control additional functions as defined below. The parameters are separated with semicolons (;).
SYNTAX: y=f(x);xRange;[yRange];[O][L][I][Wn]
'y' var[/unit] [label] dependent variable.
'f(x)' expression with independent variable.
'xRange var[/unit] [label]=fr..to[\dx]'
dx is optional stepwidth, otherwise see Prefs.
'yRange' fr..to.
'O' switch for Overlay.
Only the curve will be plotted!
'L' switch for Logging all calculated values in the Log/Result window. Additional functions which apply to logged values (Statistics) will then be active the same way.
'I' switch for Immediate plot (without dialog).
This can be handy if you want to call and plot functions e.g. from a Note record.
'Wn' switch for Pen Width n (n=1..9)
Omitting this switch sets to n=1.
You can enter a plot string directly or assemble it through a preceding dialog.
y=x**2;x=-10..10
Wave=sin(time);time=0..10;-1..1;OLW2
Plots can also be initiated directly from equation records when you enter a range (from..to) in any variable.
Tapping on a plot calculates the function values f(x)=y and displays a blinking cursor at the selected curve point.
Once defined, the plot function f(x) can be called from the calculator and used as any builtin function (see Menu\Functions\..),
e.g. Wave(10)
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Arial
Times New Roman
Times New Roman
Times New Roman
Times New Roman
ICalculator
Format (default=Generic)
Output format of numbers:
Generic: Standard format (normally best!) with given digits, like "666.666667".
Fixed: Fixed number format with given number of decimal places, like "666.67".
Scientific: Exponential format with given number of decimal places, like "6.67E+02".
Format does not effect internal representation!
Decimal|Digits (default=10)
Number of decimal places or number of digits in total (Generic) (the decimal delimiter counts one digit).
Select Result (default=off)
If checked, the result in the entry field is always hilited (selected). This simplifies immediate reentries of new calculations.
Same Unit (Cntrl
) (default=off)
Activate this option to disable the default evaluation to standard units! This can be handy if you do calculations like "10inch+1cm" or "::+100day". FORMULARY then always resolves default to the first given unit.
NOTE: Explicitely given target units (after "=") will always override any default mode. And, you always can switch temporarily to the opposite mode with Cntrl-ENTER.
Log Group (default=off)
Additional information about the dimension of your calculation will be logged.
Log Records (default=off)
Will also log the name of any record you called up.
Autorange/pixs (default=20)
Stepwidth in pixels for evaluating the dependent (ordinate) range. This is a compromise between speed and accuracy:
A low value (min=1) gives a more accurate range but takes longer time.
A high value (max=ScreenWidth) is faster but may miss extreme values of a vivid curve.
Plotting/pixs (default=10)
Stepwidth in pixels for plotting the curve. This is again a compromise between speed and accuracy.
Lower the value (min=1) for more accurate plotting.
Increase the value (max=ScreenWidth) for smooth curves.
Note: It is also possible to define the number of steps a function will be calculated and plotted (see Plots).
x-Ticks/pixs (default=60)
Stepwidth in pixels for drawing labeled ticks on the x axis.
Low value (min=1): dense ticks.
High value (max=ScreenWidth): sparse ticks.
y-Ticks/pixs (default=30)
Stepwidth in pixels for drawing labeled ticks on the y axis.
Low value (min=1): dense ticks.
High value (max=ScreenWidth): sparse ticks.
Tap&Hide (Cntrl
) (default=off)
If off, you have to close the plot window manually (Toolbar or Cntrl-P), otherwise the last tapped value is entered and the plot window will be closed. You can always select the other mode temporarily with Cntrl!
Times New Roman
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
?,@62*]
:6.D5
Hex Conversion
Date&Time
Toolbar
Entry field
Times New Roman
Times New Roman
Expressions
Equations
Plots
Search Algorithm!
Scaling Factors#
Times New Roman
Times New Roman
Times New Roman
@FORMULARY depends on a text based database, which can be viewed and modified with the standard DATA application.
Each record in the database consists of up to 8 text fields in this order (name of the field is irrelevant):
Group: text$
Name: text$
Info: text$
1: text$
2: text$
3: text$
4: text$
5: text$
6: text$
7: text$
8: text$
The length of the textfields can be appropriate (<=250). Not all fields have to be filled.
Group: Only used for grouping the records and displaying the dimensions of
units.
Name: All records are identified by name, but several (alias) names, which are separated by Enter or Commas, maybe used. These must be unique and will be used alternatively. No numeric (0..9) and special characters (<blank>*/+-^%.,;()
[]{}=:) are allowed here.
Info: This is a general text field to give additional informations about the record.
Field 1: The content in this field determines how the record will be handled:
1) empty: Standard Unit (SU) record
2) expression: Conversion record
3) one or more "tabs": Table record
4) "=" or "==": Equation record
5) one or more "Enter": Note record
6) Plot def ("=".."="): Plot record
Fields 2..8:
These can be empty or are used appropriate.
The following is a more detailed description of the different types of records. Don't be confused, things are more simple than it seems! See the examples in the database!
Standard Unit (SU) Record
These few records contain no conversion factors and therefore will simply terminate conversion.
Each database should contain all the basic SU units like: kg, m, sec, A, cd,
K. But you can extend it with
, US$, rad, mol, ...
Conversion Record
The conversion factor is normally a simple expression (e.g. "12 inch").
Prefixing an expression with a domain name (e.g. "Imperial: 5 floz") allows for alternative conversion factors for the same unit in the following fields, like in different measuring systems (US, Imperial, Troy, ..). Choose the appropriate domain by extending a symbol at the entry with this name (e.g. "inch.imperial" or "inch.us").
Each unit must be solvable (in general via other units) to the standard units, for example: knots -> seamile/h; seameile -> meter ; h -> min -> seconds.
Avoid circular dependencies like foot = 12 inch; inch = 1/12 foot.
The search algorithm determines how units are found. Avoid ambiguities with the scaling factors (if a unit is named "nm", it is not possible to find the unit nanometer = "nm" anymore!).
To see if your database performs consistently, use the function Report to generate a list of all your records with evaluation to standard units. Unresolvable units will be flagged with an error remark.
Table Record
Tables normally describe how variables correlate in a linear dependency to each other.
You simply put up a table with sample values or corresponding ranges. FORMULARY
will interpolate and extrapolate accordingly (the range can also be reversed)!
SYNTAX: var[/unit] 'tab'['tab'] exp
'var' is the name of the variable (any text)
'unit' will be used for pasting values.
'tab' is the delimiter.
'exp' is simply a number (algebraic expression) or a range (from..to).
Examples:
Group: Currency
Name: Europe
Info: This is an simple table
1: Germany/DM 1
2: France/ffr 3.25
3: Switzerland/sfr 1/1.22
4: England/Pfund 1/2.94
Group: Sizes
Name: Shoes_Men
Info: This is an example for ranges
1: England 6.5..11
2: USA 7..(11+1/2)
3: Europe 39..46
Equation Record
This is the general and most powerful method to describe nonlinear dependencies between more variables in a formula
F(a,b,c,d,..)
You can then list the different solutions (transformations) for each variable in table form (F1,F2,... are transformations of the same formula F):
a=F1(b,c,d,..)
b=F2(a,c,d,..)
Equations which are not transformations but linked over the same variables can be added and will be simply evaluated in the order top to down. This can be used to display a table of variables with any functional dependency from another variable(see Temperatur example below):
If you are not able to transform into the appropriate expression, list all independent variables embraced in {} to allow the setting of the depenedent variable in the other expressions!
'initial' is a starting value (default 1).
Examples:
An example could be the formula from mathematics to evaluate the volume of a cone. If you look into a formulary it is:
volume = radius**2 * pi * height/3.
Group: Mathematics
Name: Cone
Info: Threedimensional object
1: V volume=r**2*pi*h/3
2: r radius=sqr(V/(pi*h/3))
3: h height=V/(r**2*pi)*3
Group: Mathematics
Name: Cone (extended with related formulas)
Info: V= r**2 * pi *h/3
1: V volume=r**2*pi*h/3
2: r radius=sqr(V/(pi*h/3))
3: h height=V/(r**2*pi)*3
4: -------------------------------
5: M coat_area=r*pi*sqr(r**2+h**2)
6: G ground_aera=r**2*pi
7: O surface=G+M
The variables in the last 3 lines (5..7) will be calculated additionally (from the variables in the previous lines), but can not be set.
Group: Physics
Name: Temperature
Info: Example for independent but linked formulas
1: Kelvin=Rankine*5/9;273.15
2: Celsius=Kelvin-273.15
3: Fahrenheit=9/5*Celsius+32
4: Reaumur=100/80*(Fahrenheit-32)*5/9
5: Rankine=9/5*(80/100*Reaumur+273.15)
Plotting
In entering a value range with '..' (e.g. '-10..10') for a variable you select the plot mode. This (with ENTER) selected variable will always be considered as the independent variable on the horizontal axis (x).
The program analyses the equation system and asks you for the dependent equation to be plotted on the vertical axis (y)!
If you have also defined a value range for the dependent variable, this range will be used as fixed value range for the function. Otherwise the range will be evaluated (autoranging) and entered as a function value!
For multiparametric plots you can change now a parameter and plot the same function as an overlay into the same coordinate system. Simply select the same variables for the horizontal and vertical axis.
Note Record
Notes are any text which can be used for further calculations (selecting constants, measuring values,...) or simply to recall text for any purpose.
The text will be presented as a table with up to 8 columns and up to 16 lines (depending on text and font size!).
The 8 fields with one or more lines constitute the columns and will be ordered side by side.
SYNTAX: line1 'Enter' line2 'Enter' ...
'line' is any text
'Enter' is new line within a field
Example:
Group: Electronics
Name: Resistances
Info: This is a Note record
1: Aluminium
Lead
Gold
2: 0.028 Ohm*mm2/m
0.21 Ohm*mm2/m
0.023 Ohm*mm2/m
3: 4e-3/
4e-3/
4.5e-3/
Plot Record
A record identified as a plotrecord can hold in each field either a Function Plot or a Data Plot definition:
SYNTAX Function Plot:
y=f(x);x-Range,y-Range,Options
SYNTAX Data Plot:
y=;x-Range,y-Range,Options
x1 y1
x2 y2
x3 y3
Example:
Group: Demo
Name: DataPlot
Info: This is a Data Plot record
1: y/m3 Volume=;x/m Length=0..10;-5..5;I
2: 0 4
1 2
...
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Swiss
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
Times New Roman
@V2.00:
Plotfunctions accessible as builtin functions.
Generic Bracket function () for ease of entry.
Bunch of 'Other Functions' implemented.
Units in results from Tables, Equations and Plots possible.
Result Variables F1..F8 declared.
Note record constituted.
Statistics functions added.
Find and Select combined.
User interface rearranged.
V2.01:
Calling Tables, Equations and Notes from expressions
and using selected values for further calclutaions.