iBright FAQ Banner

...baseSim FAQ

Frequently Asked Questions of baseSim development and demonstration models.

General

What is baseSim?
Why choose baseSim?
Why does baseSim cost so little compared to conventional Simulation software?
What sort of Systems can be modelled using baseSim?
Can I use baseSim to develop and sell my own Simulator?
What is the recommended minimum hardware requirement?
What Statistical Distributions are available in baseSim?
Does baseSim have database connectivity?
Does baseSim have any 3D capability?
Do I need to do any coding to build a model with baseSim?
What is Delphi?
Do I need Delphi to run baseSim Models?
What versions of Delphi are supported?

Model Development

Why are Database 'Currency' fields imported as baseSim type 'dtDouble'?
Error: Unit bs2ActionTimeDisplay compiled with different version of ActnMan.
The Delphi IDE seems to 'freeze' when debugging.
'ComCtrls' error when compiling model.
How do I move a baseSim Component at run-time?
How do I open an external Application?

Demonstration Models (General)

What other software do I need to run an baseSim demo model?
Does baseSim and the demo models have database connectivity?
What simulation tools are the demo models based on, what additional functionality and capabilities does it have?

General

What is baseSim?

baseSim is a set of Component Objects for the Delphi Development Environment that allows the user to construct arbitrarily complex Discrete Event Simulation models.

Why choose baseSim?

There are a plethora of Simulation programs currently available and it is perfectly reasonable to ask why choose baseSim. The answer lies in its unsurpassed price-performance capability. See also Choosing a simulation tool.

Why does baseSim cost so little compared to conventional Simulation software?

Low price does not equate to reduced capabilities. Much development effort in other Simulation products is expended on providing database connectivity, charting, file interfaces, user interface development and the provision of a proprietary Simulation language. baseSim capitalises on the extensive existing capabilities of Delphi in these areas, allowing us to focus on the core simulation functionality reducing the overall development effort.

What sort of Systems can be modelled using baseSim?

There is a huge range of systems amenable to modelling with baseSim from domains such as manufacturing, warehousing, supply chain, communications, commerce, finance etc.

Can I use baseSim to develop and sell my own Simulator?

No.

What is the recommended minimum hardware requirement?

Most modern PCs have resources that are more than adequate to develop applications using Delphi and baseSim. A minimum specification would be:

Processor

Pentium II 450 MHz (or higher)

Operating System

Microsoft Windows '98
Microsoft Windows NT 4.0 (Service Pack 3)
Microsoft Windows 2000 (Required for Delphi 2005)
Microsoft Windows XP (Required for Delphi 2005)

Memory

Minimum: 256Mb of RAM
Recommended: 512Mb of RAM (or higher)

Video

Minimum: 800x600 at 8 bpp
Recommended: 1024x768 at 16 bpp (or higher)

* 3D Accelerator card supporting OpenGL is recommended when using the 3DVRML Add-on module

Hard Drive

Minimum: 120Mb free space
Recommended: 520Mb free space (or higher)

What Statistical Distributions are available in baseSim?

Most of the recognised Simulation Statistical Distributions have been included in our baseSim Simulation Components. Additionally, it is possible to add User defined Distributions to the Distribution set:

Continuous

Includes: Uniform, Normal, Negative Exponential, Triangle, Weibull

Discrete

Includes: Binomial, Poisson, Integer-Uniform

User Defined

Includes: an Object Pascal framework in which the User can insert their own Distribution functions

Does baseSim have database connectivity?

Yes. Delphi 6.0 upwards provides excellent database connectivity components that can be utilised within baseSim models - the Professional Module 'add-on' is required.

Does baseSim have any 3D capability?

Yes, 3D capability is available in version 2.0 upwards - the 3D VRML Module 'add-on' is required.

Do I need to do any coding to build a model with baseSim?

It is possible to build realistic models that rely entirely on the default behaviour of the baseSim components. However, it is likely that a simulation of a real system would require a degree of coding to encapsulate the logic of that system. All coding is done in standard Object Pascal.

What is Delphi?

Borland (Inprise) Delphi is a powerful 32-bit application development environment based on the Object Pascal programming language.

Do I need Delphi to run baseSim Models?

No. baseSim is supplied as a set of components that are made available to the modeller inside the Delphi development environment. Applications build using baseSim components can be compiled to run independently of Delphi. In this way model executables can be freely distributed to your customers.

What versions of Delphi are supported?

baseSim requires Delphi version 6.0 (or later). It works with Professional, Enterprise or Architect versions.

It is also our intention to support the Microsoft .NET framework.

Please note that baseSim does not work with the Personal or Trial versions of Delphi.

Model Development

Why are Database 'Currency' fields imported as baseSim type 'dtDouble'?

It appears that currency fields are not straight forward.

BDE interprets them as float fields - however there is a switch in BDE to import them as BCD fields. ADO interprets them as BCD unless you switch BCD off and then as float fields. Either way baseSim interprets float fields and BCD fields as dtDouble. See the Delphi documentation on all this confusion.

The work around is to create the fields to the particular table yourself at design-time or run-time and to create a TCurrencyField object instead. baseSim will then convert this to dtCurrency.

However, you must think about why you are using the currency data type - it has 4 d.p. precision but only displays 2 so when summing can often lead to confusing results e.g. 1.25 + 1.35 = 2.59? Many people don't like using TCurrencyField (which is infact a Double type) - they use the TBCDField (which is infact a Currency type)!

Error: Unit bs2ActionTimeDisplay compiled with different version of ActnMan.TCustomActionControl.

When I try to run the simulation demos (for example Aircraft Assembly Line) I get a fatal error: MasterSimFormUnt.pas(19): Unit bs2ActionTimeDisplay was compiled with a different version of ActnMan.TCustomActionControl.

This error sometimes appears when using the original release of Delphi 6. Please ensure that you have the latest service packs installed. We compiled the 'dcu' files using Delphi 6 service pack 2. There appears to have been a small change to the ActnMan unit since the original release of Delphi.

The Delphi IDE seems to 'freeze' when debugging.

This is a problem we have experienced in Windows XP, using Delphi 6 or 7 (also affects Microsoft Visual Basic - accessing the font property of objects from the IDE).

Trying to step through the logic of the Model (which is running in a background thread) will cause the Delphi IDE to freeze for several minutes. The problem relates to a bug in the 'Ctfmon.exe' process, which handles the 'Advanced Text Services' in Windows XP.

There is no official fix as of yet (02 Feb 2004), but the workaround is to switch off 'Advanced Text Services' via the 'Control Panel'. More information on the problem and the workaround can be found on the Microsoft Website - Knowledge Base Article 828929.

'ComCtrls' error when compiling model.

I suspect you are using Windows '95, which has an older version of the 'ComCtrls' libraries. 'ComCtrls' can easily be updated by running the '40comupd.exe' program, which can be located on the Delphi 4 CD - '\Info\Updates\40comupd.exe'.

Also ensure that the up-to-date Delphi and Operating System Service Packs have been installed.

How do I move a baseSim Component at run-time?

Most baseSim Components can be moved at run-time.

To move the desired component, simply position the mouse over the desired Component, hold down the 'Alt' key and press the left mouse button. The mouse cursor will then change to a 'grabbing hand' shape. The Component will then move in accordance with the mouse.

Release the mouse button when the new position has been reached.

In baseSim version 2.0, objects may also be moved using the standard Windows 'drag and drop' mechanism.

How do I open an external Application?

This can be achieved by using the 'ShellExecute' Windows API function, which is located in the 'ShellAPI.pas' unit.

Example usage:

Procedure OpenProgram;
var
  FileName, FileLocation, Operation: string;
begin
  FileName := 'Aircraft Assembly Line.Doc';
  FileLocation := GetCurrentDir;
  if FileExists(FileLocation + '\' +
    FileName) then
  begin
    Operation := 'Open';
    ShellAPI.ShellExecute(Application.Handle,
    PChar(Operation), PChar(FileName), nil,
    PChar(FileLocation), SW_SHOW);
  end;
end;

Demonstration Models (General)

What other software do I need to run an baseSim demo model?

None. The demo models and most standard applications developed by iBright can be run as stand-alone applications without any third party software.

Does baseSim and the demo models have database connectivity?

Yes - the Professional Module 'add-on' is required.

What simulation tools are the demo models based on, what additional functionality and capabilities does it have?

The demo models are base on a discrete event simulation tool called baseSim. This is a comprehensive simulation tool with the capabilities found within any modern programming language such as ODBC, ActiveX, COM, and XML etc.

Search | Privacy | Disclaimer | Contact

Top

Copyright © 2001, 2007 iBright Ltd. All rights reserved. Last modified 16-Oct-2007 22:14

ICRA Rating