# Category : Science and Education

Archive : SFPAK3.ZIP

Filename : SFPAK3.DOC

AUTHORS NOTE:

NOTE: This document is far shorter than I would like since I enjoy

coding far more than writing documentation (and there are plenty of

excellent Physics/Electronics/Science texts out there that do far

more justice to yours studies than I could in just a short document

file). But I have include information screens and am working on

increasing the amount of on-line assistance. This program will in

conjunction with a wide variety of texts. All comments welcome.

- SCIENCE FACTOR PACK THREE -

INCLUDING

Science Factor (tm) Ver 3.72 Beta

Chempal (tm) Ver 3.4

Rotate (tm) Ver 2.0

Randlin (tm) Ver 1.0

Sfetform (tm) Ver 1.0

ALL programs written by Bruce Norman Baker

RELEASE DATE: 4/29/1992

---------------------------------------------------------------------

Copyright (c) by Bruce N. Baker 1988-1992 All rights reserved.

----------------------------------------------------------------------

TABLE OF CONTENTS

=================

(S) Vendor Information

I Registration Information.

II What do I get if I register ?

III SCIENCE FACTOR - General Program information.

IV SCIENCE FACTOR - Upcomming Changes.

V SCIENCE FACTOR - Summary of Menus.

VI SCIENCE FACTOR - Data Registers

VII ROTATE - General Program Information.

VIII ROTATE - QUICK HELP (real time commands).

IX ROTATE - Supplemental information about matrices.

X CHEMPAL - Information

XI RANDLIN - Screen Saver/Display/Blanker

------------------------------------------------------------------------

(S) VENDOR REGISTRATION INFORMATION

-----------------------------------------------------------------------

Science Factor can only be sold by a Shareware Vendor if this

program has been registered with Science Factor Systems. You will

recieve a copy of the program with your business information in

the intro screen and a note to the effect that you support shareware.

Once registered you can distribute your copy of this software for

any price you desire. I retain all copyright privledges for the

code and your copy is for your personal use and distribution only.

This unregistered version is *NOT* to be distributed for ANY FEE.

USE: VENDOR.REG for registration purposes, Thanks.

------------------------------------------------------------------------

(I) REGISTRATION INFORMATION for supporting users.

-----------------------------------------------------------------------

You are free to use this copy of Science Factor and it's assorted

programs for as long as you like and make as many copies as you

want to. This program has specifically been made FULLY FUNCTIONAL

and has not been crippled.

If you want the newest registered copy, personalized with your

name or schools name on it, mailed right to the location of your

choice you can use REGFORM.THX, you also get free upgrades at

SF BBS and direct shipped registered upgrades for only $5.

** Educational is important and that's why I've been working on this

project since 1988. I HOPE you enjoy this product !!!

-----------------------------------------------------------------------

(II) What do ***I*** get if I register ?

-----------------------------------------------------------------------

1) NEWEST PERSONALIZED REGISTERED RELEASE DIRECTLY MAILED TO YOU.

2) Access to all updates at Science Factor BBS, USA.

FREE registered copies if downloaded from SF BBS.

3) A $5 Upgrade Option for a direct mailed copy !

4) Software support from SCIENCE FACTOR BBS

Data: (206) 562-7083 Voice: 562-7011

5) My thanks and appreciation of your support of this product.

Thanks for considering to register this package.

------------------------------------------------------------------------

(III) SCIENCE FACTOR - GENERAL PROGRAM INFORMATION

------------------------------------------------------------------------

1) GETTING AROUND THE MENU SYSTEM (first time users).

The basic idea is to use the arrow keys on your cursor pad

to move from one menu entry to another. The menu is set up in

a hierarchy type structure so either press "esc" to exit a menu

selection or move to the exit menu choice and press "Enter".

Some functions allow you to press the F1 key to get more

information about that particular function. Also there are

registers which can be used to transfer values from one function

to another.

2) MATH ENTRY : Floating real numbers can be entered using engineering

notation. The capital "E" or lower case "e" may be used to raise a

number to a power of 10.

ie: 2.99E8 would be the approximate speed of light.

9.11e-31 would be the approximate rest mass of an electron.

3) UNITS :Most functions want information in SI units

(ie: meters,kg,sec...) a math conversion routine is supplied

to help with conversions. Usually the fundamental unit is used

so the entry is easiest using engineering notation instead of say

.00000000343 (best written as 3.43e0-9).

4) INTEGERS : No E or decimal place will be accepted where an integer

number is expected. The field will restrict you to the size of the

integer that is maximum for that function so you don't have to worry

about entering an integer that is too big or too small.

5) ESCAPE KEY : Can be used to exit from any menu or directly from the

most entry prompts.

6) PRINTER : This program is configured for EPSON compatibles.

7) BNBPRO.CFG contains the color and monitor setup parameters. The

parameters are installed upon first running the program and can be

changed by deleting the bnbpro.cfg file or simply going in the

Utility menu and changing the colors. The type of monitor is

checked upon each running of the program.

All Science Factor EXE files use this configuration file.

8) SFPASREG.DAT: This file is simply a temporary storage location for

the passing of register variable back and forth from the various

EXE files.

9) SOLVING FOR A SPECIFIC VARIABLE: Some functions give you a menu of

possible variables you can solve for. Note, that you can only solve

for one variable at a time.

10) CHANGING FROM MONOCHROME TO COLOR and BACK: Just delete BNBPRO.CFG

and run SCIFACT again. It will autodetect the monitor and set up

initial colors.

11)SYSTEM REQUIREMENTS:

Dos 3.21 or above. 512 of memory (to load external programs

such as Chempal/Rotate/Sfequdis/sfetform and sparks).

Epson (or compatible) printer for register printing.

Your monitor should be able to support extended character set.

12) CGA-EGA-VGA GRAPHICS:

Some of the functions in Science Factor support CGA/EGA and VGA

monitors. The JFET graphic function will not display on a CGA

or Monochrome Monitor at this time this will be fixed in the

future. The display equations will work with any monitor, and

Sparks will work with CGA/EGA/VGA monitors.

13) INFO-SCREENS:

This package contains many pop up info screens in selected

functions. These display information pertaining to certain

formulas and concepts. The F1 key will access these. Only

the function with a "*" sign in the menu have these.

14) REGISTERS:

By pressing a

entering a number you will get a prompt that asks you what

register you to get your data from and the program will place

this data into your current variable.

These are also explained more below.

14) MEMORY SIZE PROBLEMS:

If you don't have enough memory to run Rotate.exe, Chempal.exe

or Sfequdis from Science Factor, run them directly from dos

provided you have run Science Factor at least once to create

a BNBPRO.CFG file.

-----------------------------------------------------------------------

(IV) SCIENCE FACTOR - Upcomming changes

------------------------------------------------------------------------

Below is a list of some POSSIBLE (under consideration) changes that

might occur, and who knows what else I'll think of in the meantime.

- More functions (of course).

- Add more Graphic Support and more Graphic functions.

- Polynomial Solver

- Complete INFO SCREENS for all functions.

- Improved Regi Calc (to more closely emulate an HP calculator).

- Sound.

- Printing capability for data dumping of program information.

Major Change:

- Upgrade to Conversion Utility completed. Another one may happen

to expand it a little more later on.

-----------------------------------------------------------------------

(V) SCIENCE FACTOR - SUMMARY OF MAIN MENU OPTIONS

------------------------------------------------------------------------

MAIN MENU :

Chemistry Menu - Formulas dealing with chemistry.

Relativity Menu - Formulas for velocities approaching the

speed of light.

Electrostatics/Dynamics Menu - Formulas involving electricity.

Electrical Engineering - Formula's dealing with electronic

circuits, DC, AC and SEMICONDUCTORS.

Optics Menu - Formulas dealing with the study of light.

Math Menu - Vector math, matrix and quadratic calculations.

Physics Level 1 - Basic equations for physics.

Physics Level 2 - The next "level" of physics equations.

Quantum Physics - Functions related to Quantum Physics.

Conversion Utility II - Converts between units, this is

an upgraded version as of 4/25/92.

Formula/Constant List - Display equations and formulas.

(Runs SFEQUDIS.EXE)

Utility Menu - Change the programs colors, save, print and get

registers, shell to DOS.

Regi Calc - A built in arithmetic register manipulator.

JFET Transconductance curve - Graphs the transconductance curve

on a EGA/VGA) monitor.

CHEMPAL - Runs the chemistry program CHPAL.EXE.

ROTATE - Runs the EGA matrix rotation program.

RANDLIN - Runs Randlin, a screen saver/display/blanker.

SFEQUDIS- Display equations and formula's.

SFETFORM- Electronics Technology/Engineering Module

SFETGRAF- Electronics Technology Graphing Module.

------------------------------------------------------------------------

(VI) SCIENCE FACTOR - DATA REGISTERS

------------------------------------------------------------------------

DESCRIPTION - There are nine registers in Science Factor. They are

used to store numbers while in the middle of certain calculations.

Or just to save a number for future references. All submenus

display registers but not all the functions access them. They are

very handy for moving data to and from the conversion calculator or

Regi Calc.

SAVING REGISTERS

Registers can be saved to disk for future reference. They are

save to a file called "Scifact.reg" and ALWAYS overwrite the

previous saved registers. This is accessed in the UTILITY menu.

RETRIEVING REGISTERS

In the Utility menu you have the option of retrieving a register

group. ALL 9 registers are always read or written at the same

time.

ACCESSING REGISTERS INSIDE FUNCTIONS:

You can INPUT a register value in a most ANY formula by pressing

"Enter" without entering any number. When prompted for a

numeric value press enter only and you will then be prompted to

enter the number of the desired register (which are displayed at

the top). The value contained in that register will

automatically be placed as input into that function variable.

HOW CAN I OPERATE ON THE REGISTERS DIRECTLY:

Registers can be manipulated in Regi Calc and the

conversion utility for changing from on unit to another.

------------------------------------------------------------------------

(VII) ROTATE - GENERAL PROGRAM INFORMATION

------------------------------------------------------------------------

- Information:

Welcome to Rotational Effects. This program is designed to help

students to check and see results of matrix translations in a 3D

environment using computer assistance for visual and computational

information. This version allows only two built in objects to be

rotated, A square and a polyhedron, or a user defined object.

The polyhedron corresponds to an object in the ANTON text of

Linear Applications.

- Standard Features

* Enter your own object.

* Rotatation of Rectange or Polyheron around X,Y or Z axis.

* Dual Matrix Multiplications.

* You can change the rotation increment size.

* Real time modification of rotation.

* You can single step through the rotations.

* Scaling of object.

* You can see the numeric values of the new points - vs - old points.

* Axis display can toggle off or on.

* EGA ONLY (VGA in EGA res)

------------------------------------------------------------------------

(VII) ROTATE - QUICK HELP

------------------------------------------------------------------------

Rotational Effects QUICK HELP Assistance for commands.

Real time commands - (Free spin mode only).

Key Result

ESC Quit the rotation and returns to main menu.

X Set the 1st matrix multiplication to rotate around X axis.

Y Set the 1st matrix multiplication to rotate around Y axis.

Z Set the 1st matrix multiplication to rotate around Z axis.

Alt-X Set the 2nd matrix multiplication to rotate around X axis.

Alt-Y Set the 2nd matrix multiplication to rotate around Y axis.

Alt-Z Set the 2nd matrix multiplication to rotate around Z axis.

M Toggles between single and two matrix rotation.

D Toggles division marks off and on.

Up Up arrow makes rotation angle 1 larger.

Down Down arrow make rotation angle 1 smaller.

Left Makes rotation angle 2 larger.

Right Makes rotation angle 2 smaller.

+ Speeds it up (if possible).

- Slows it down.

A Toggles Axis display off and on.

H Toggles real-time help screen (This slows down the rotation).

Show POINTS

This mode is selected from the main menu and is perfect for going

through the matrix translation one step at a time. Both old and

new points are displayed. This is a great way to check your

calculations of where the matrix should move to given your

specified angle of rotation.

------------------------------------------------------------------------

(VII) ROTATE - SUPPLEMENTAL MATRIX INFORMATION

------------------------------------------------------------------------

=> SUPPLEMENTARY INFORMATION ON ROTATION EFFECTS <=

Introduction

Objects that are displayed on a video monitor can be stored

for convenience in a matrix form. The matrix containing all the

coordinates in an M3xn matrix where n is the number of points and

the 3 refers to the x,y and z axis respectively. In order to

graph these correctly the EDGES must also be stored in a matrix

or simple array. When all of the points have been plotted (x &

y, the z are ignored but included for continuity of information)

the edges are then drawn. The edges simply tell which point is

connected to which point.

SCALING

This is the first type of transformation in which an object

is made larger or smaller on any axis. This can be used to make

an object appear like it's moving toward or away from you. All

three axis can be operated on at the same time. These "scaling

factors" are represented by a 3x3 matrix which multiplies the

original M matrix. The basic form to perform scaling of .5 on

the x, 1.2 on the y and 3 on the z would look like the following.

ÚÄÄ ÄÄ¿

³ .5 0 0 ³

T = ³ 0 1.2 0 ³ T M = M'

³ 0 0 3 ³

ÀÄÄ ÄÄÙ

TRANSLATION

This is a method of moving an object to a different part of

the screen (or graph area). This can be achieved by matrix

addition or multiplication of a 3xn and 4x4 matrix, respectively

where n is the number of points. The addition method is achieved

by adding the translation vector to the original matrix in the

following manner T + M = M'. If we want to translate the matrix

2.1 in the x direction, .5 in the y direction and 1.6 in the z

direction the 3x1 matrix would look like this :

ÚÄÄ Ä¿ ÚÄ ÄÄ¿

³ 2.1 ³ Which is expanded ³ 2.1 2.1 .... 2.1 ³

³ .5 ³ ³ .5 .5 .... .5 ³

³ 1.6 ³ T = ³ 1.6 1.6 .... 1.6 ³

ÀÄÄ ÄÙ ÀÄ ÄÄÙ

This is added by the equation :

T + M = M'

To give the new coordinates of the object.

The multiplication matrix to perform this same operation would

look like the following :

ÚÄÄ ÄÄ¿

³ 1 0 0 2.1 ³

³ 0 1 0 .5 ³

³ 0 0 1 1.6 ³

³ 0 0 0 1 ³

ÀÄÄ ÄÄÙ

<< ROTATION >>

This is a more complex transformation where we can take a

matrix and use matrix multiplication to make the "graphic" image

and rotate it around the x, y or z axis. We can combine these

moves by multiplying the transformation matrices together but the

order in which they are multiplied is critical. The three

rotation translation matrices are :

Rotate around X Rotate around Y Rotate around Z

ÚÄÄ ÄÄ¿ ÚÄÄ ÄÄ¿ ÚÄÄ ÄÄ¿

³ 1 0 0 ³ ³ cos 0 -sin ³ ³ cos -sin 0 ³

³ 0 cos -sin ³ ³ 0 1 0 ³ ³ sin cos 0 ³

³ 0 sin cos ³ ³ sin 0 cos ³ ³ 0 0 1 ³

ÀÄÄ ÄÄÙ ÀÄÄ ÄÄÙ ÀÄÄ ÄÄÙ

A simple matrix multiplication is done if we wanted to rotate the

x, y and then z axis.

Tz * Ty * Tx * M = M'

Note the order of the multiplications. This multiplication

although simple can get very time consuming if done on paper and

the object to be rotated has a lot of points. Obviously, this is

a prime case for the use of a computer. Sometimes it is faster

to break down the multiplications, when using a computer, to just

the components that will change the original matrix thus saving

calculation time to speed rotations. With the newer machines

out, unless your performing fast graphics (ie: flight simulator)

this isn't quite as important as it used to be.

-----------------------------------------------------------------------

(IX) CHEMPAL INFORMATION.

------------------------------------------------------------------------

- Purpose

CHEMPAL was designed to help students learn and memorize the

periodic table. This version allows going between number,name &

appreviations plus sound and a lookup table for the element. This

program also supports some very basic mouse movements.

- Basic Info

This program is very much self intuitive but I will comment that

it is not case sensitive when entering element names or

abreviations.

- Levels.

These simply start at the lowest elements and spread to the

higher elements at the higher user level.

- Points.

More points are given at higher levels then lower levels.

-----------------------------------------------------------------------

(X) RANDLIN.

------------------------------------------------------------------------

Randlin is a little screen saver/display/blanker program

that I wrote many years ago for only an EGA monitor. I decided

it would be nice to have it in Science Factor so I upgraded it

to work with CGA and VGA and added a few more functions and

put it in the program. The program was originally called

explosions, but a program with that name appeared on the shareware

market, so I changed it to Sparks, and then a program of THAT

name appeared on the market, SOOOOOO, I renamed it RANDLIN (which

stands for RANDOM LINES. Hopefully this name won't appear on BBS's

in another form as well.

If your monitor is supported it gives you options of what

display you can get or you can adjust the speed of the

display to account for speeding fast 486 computers. You

have the option of just blanking the screen as well.

RANDLIN will display graphics on some Herc Monochrome monitors

if you run HERC.COM first. A MS C requirement since it's not

built in their library. The Monochrome version is NOT very

impressive so I suggest not using it, you can always use

it's basic blanking facility.

^^^^^^^^^^^^^^^^^^^^^^^^^ END OF SFPAKxx.DOC ^^^^^^^^^^^^^^^^^^^^^^^^

Enjoy !

If you have comments or questions regarding the program please contact:

Bruce N. Baker

Suite A3-323

15600 NE 8th

Bellevue, Wa. 98008

(206) 562-7083 (data)

(206) 562-7011 (voice)

Please send ANY BUG REPORTS to the above address, THANKS !!!

(use bugform)

.......................................................................

All parts of this product are copyrighted by Bruce N. Baker and should

not in any way be reverse engineering nor modified. I would be happy to

discuss this product, and the sharing of the technology in it, with any

individual who may be interested in it.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Disclaimer:

I shall not assume any liability for use or misuse of this product and

I shall not be liable for any damages, whether direct, indirect, special or

consequential arising from a failure of this program to operate in a manner

desired by the user.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>