|
About
- Superbase Scientific
Overview:
Superbase Scientific is a unique simulation
tool that allows you to simulate real life problems under full programming
control.
You can, for example, model physical processes
mathematically from the output stored in a Superbase database, simulate
chaotic behaviour, examine the behaviour of dynamical systems governed
by differential equations over time, and view 3D objects in perspective.
Features, such as numerical
integration, differentiation,
summation
and matrix multiplication
will reduce the calculations in your application to just a few lines
of transparent code.
Numeric output:
It should be noted that Superbase Scientific
is not a computer algebra system. This is to say that it produces
numerical rather than formulaic output, which is generally what
is eventually required in any application anyway. The great strengths
of Superbase Scientific are the powerful and easy-to-use Super Basic
Language (SBL), which is an object-oriented language similar to
Visual Basic, the form-based environment allowing the programmer
to choose how output is displayed, and the ease with which applications
can be linked to databases.
Usage and Applications:
It is misleading to think of 'scientific' in
Superbase Scientific as having a narrow academic meaning. Superbase
Scientific is as well suited to the calculation of interest payments
or generating a perspective view of furniture as it is to modelling
the gravity well of a planetary system.
An example of some of the new features contained
in this unique software that can be used by the non- scientists
to solve scientific problems is the numerical integration methods,
called Integrate( ).
Unlike integration encountered in mathematical
text books, which acts on a symbolic function to produce a formula
for the answer, Superbase’s numerical integration is given
a formula and a range over which to integrate it, and produces the
result as a number.
A good reason to use a numerical rather than
symbolic integration is that quite often in a real application a
function that is being summed or integrated is not easily integrated
symbolically, such as one which has discontinuities. Also, it is
the actual value of an integration that the application will require,
rather than some output formula.
Ease of Use…
Consider an application designed to manage the
consumption of some metered resource, such as electricity or a telephone
connection. Such resources are often charged at different rates
depending on the time of day, or the day of the week. In this case
suppose that the charge rate is held in variables w%, p% and o%,
where w% is the cost per hour at weekends and p% and o% are the
'peak' rate charge (9am to 5pm) and the off-peak rates respectively.
The start of any particular use of this resource (a telephone call,
for example) could be measured as s% hours since the beginning of
the week (so 12:30 pm Thursday would be 84.50) and the duration
would be measured in hours, d%. Calculating the cost of this particular
telephone call could be implemented as a complex series of IF statements,
where the call is divided into blocks of one call rate, the length
of each block being calculated, and then the total of all the costs
being summed at the end. Alternatively the single expression:
Integrate("IF (t% > 120,w%,IF(ABS((t%
MOD 24) - 13) < 4,p%,o%))","t%",s%,s% + d%)
gives the cost of the call. This simple calculation
will hold true whenever the call starts and whatever the length
of the call; whether the call lasts one minute or a thousand hours.
Other features of Superbase Scientific have similar
real-life uses. It is not obvious how vectors and matrices relate
to a business application, but their use can greatly simplify operations
previously done in nested loops, or with complex trigonometric arithmetic.
Graphic presentation…
It is always nice to have some graphics as part
of an application's user interface. An application, that manages
the design of an object, a bridge say, will help the user if a three-dimensional
representation of the object can be viewed and manipulated by the
user. A developer is likely to hold the key dimensions of such an
object as Cartesian coordinates, even if they are called width,
height and depth rather than x, y and z. It may be daunting for
some programmers to convert such coordinate based data into a view
of the object from say 30 degrees above the horizontal from a north-westerly
direction, yet mathematically it is trivial – just a couple
of rotations are required. If the key coordinates of an object are
stored in a matrix, then a single matrix multiplication is required
for each rotation, and the results can be displayed on a form by
taking just the x and y components of the result. The act of ignoring
the z component is actually performing a projection from normal
3D space onto the x-y plane. Scaling the diagram to a different
size is also a single matrix multiplication operation, so the complete
process of converting a set of three dimensional coordinates to
a rotated, scaled and projected set of two dimensional points can
be performed in one short SBL statement.
Statistics…
Superbase Scientific also provides functions
that give the same information as statistical data for normally
distributed populations. In general one will know whether or not
statistical functionality is required in an application, and for
most applications it is not needed. However for those applications
that do use statistics the provision of built-in statistical functions
could save countless hours of either programming to calculate these
values, or of searching through third party products trying to find
one which gives the required functionality in a readily accessible
way. This is in fact the essence of what Superbase Scientific gives
the programmer; there is no ground-breaking science involved, just
the provision in a user-friendly way of basic scientific functionality
that empowers the modellers and ambitious application developers
to introduce smarter data handling and presentation into their work.
|