ASAP Logo

Antenna Scatterers Analysis Program

Program Download


Download Source and PC Executables

The FORTRAN source code and executables compiled from that source are provided "free" in order to promote greater awareness and use of antenna analysis tools among student, amateur radio operators, professionals, etc. The source code was originally contained in Government reports that were not copyright and were marked "Approved for public release; distribution unlimited" (See the RDP). Mr. Jerry McCormack, the author of the thesis and this version of the code, considers the source code to be in the public domain. The compiled versions that are made available here are for convenience only. Please do not abuse this "free" aspect by misrepresenting the origins of the code or by reselling.

There may be other programs, both free and commercial, that may be more suited for particular purposes.

In addition to the FORTRAN version, Rob at The Numeric Python EM Project www.pythonemproject.com converted the version 3.1 ASAP program to the Python language. (See that page for more details.)


ASAP is being distributed as a public service. It is provided "as is" without warranty of any kind, express or implied, including but not limited to implied warranties of merchantability and fitness for a particular purpose, with respect to the software and the accompanying informational materials. The entire risk as to the quality and performance of ASAP will lie with the user. In no event shall the author of this webpage, the host of the system on which it resides, the author of the thesis and source code, or any other person, institution, or establishment be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use ASAP, regardless of the possibility of such damages. There is no guarantee that the operation of the program will be uninterrupted or error free.


The latest version is now Version 3.2. All source files and executables are updated. See the quick reference bug list . (The bug in the source code dealing with insulated wires was fixed in version 3.1)

| Programmer's File Editor (PFE) | Source Code | Compiled Executables | Download Preprocessor | | Download ASAP website |








Programmer's File Editor (PFE) is a good ASCII editor for use, not only for ASAP input and output files, but also for source code for many programs such as 'C' and FORTRAN. This is also a free program.

This is an older version which runs under MS Windows 3.1 and later is available here in a ZIP file.
.
There is a newer version which runs only on newer operating systems (i.e. Windows 95/98/NT) available at this link: http://www.download.com/Programmer-s-File-Editor-32-bit-/3000-2352-904159.html?tag=lst-0-1.
.




ASAP Source Code (and some notes on compiling)

Note: The source code does not contain the information about how to set up the input file for the program. You will also need to look at (and save) the User's Manual , the quick reference for the user's guide, and (possibly) a few Examples

Note that the whole text portion of the ASAP website including Users Manual, System Manual and other items (except for the executables and source) code is now available in one zip file here (~ 600 k bytes). When it is unzipped keep the directory structure the same for the links to work. The executables and source code should be downloaded separately from this page.

ASAP Version 3.2 - this version adds list capability to nearfield points and expands the field for printing of node numbers and segment numbers so that more than 2 digits are diplayed - currently the file OPEN statements are set to fixed filenames of 'in.txt' and 'out.txt' -- (an example input file using both the old and the new NEAR field capability is here - in.txt )
-
ASAP Version 3.2 Double Precision (not zipped) asap3_2d.for (ASCII text file 103 k bytes)
ASAP Version 3.2 Single Precision (not zipped) asap3_2.for (ASCII text file 95 k bytes)
ASAP Version 3.2 of both Single and Double Precision ASAP V3.2 Source code files (zip file: 49 k bytes)
( use File, Save As, in the web-browser to save the .for files )

One of the features of ASAP (that may not be present with other available FORTRAN source codes for antenna modeling) is its ease of compilation as well as ease of changing the size of memory allocation to fit the capabilities of whatever computer system may be available. The maximum number of nodes/segments permitted is now limited only by what can be compiled for a given computer. The source code can be easily modified for a different number of segments by changing one

PARAMETER(ISIZE=number) 

statement at the beginning of the source and recompiling.

When compiling the program there will be a lot of warnings about unused variable. It is safe to ignore these warnings.

Various versions of the program over the years have used various ways of opening the input and output files. Version 3.2 of the source code uses explicit "OPEN" statements with filename "in.txt" assigned to unit 5 for the input filename and "out.txt" assigned to unit 6 for the output filename. This was to satisfy the compiler used to create the current version of the executables on this page. Compilers and operating systems vary on how easy it is to produce workable results and which units to assign. I cannot give general instructions for every possible system but if it becomes necessary to change the unit numbers on the READ and WRITE statements this can be done fairly easily with a search and replace (but confirm each change manually!).

**** Older Stuff ****
.
Version 3.1 Single Precision (not zipped) asap3.for (ASCII text file 88616 bytes)
Version 3.1 Double Precision (not zipped) asap3d.for (ASCII text file 92259bytes)
Version 3.1 of Single and Double Precision ASAP Source code (zip file: 47522 bytes)
.
Various versions of the program over the years have used various ways of opening the input and output files. The ASAP 3.1 version uses explicit "OPEN" statements for "UNIT 5" (input) and "UNIT" 6 (output) with READs using UNIT 5 and WRITEs using UNIT 6. Compilers and operating systems vary on how well they will handle this and how convenient it is to enter filenames or redirect I/O. On UNIX systems it might be more convenient to have console I/O and use redirection. I cannot give general instructions for every possible system but if it becomes necessary to change the unit numbers on the READ and WRITE statements this can be done fairly easily with a search and replace (but confirm each change manually!).
Rob at The Numeric Python EM Project www.pythonemproject.com is/has-been converting the ASAP version 3.1 program to the Python language. (See that page for more details.)


Compiled Executables (for IBM PC and Compatibles using Dos or Windows)

Compiled versions for MS WINDOWS are available here for downloading that should run on any IBM PC or 100% compatible subject to the minimum memory and performance requirements. These executables have been checked on

*** Be sure to check the instructions below on how to run these executables. ***

Note: The executable code does not contain the information about how to set up the input file for the program. You will also need to look at (and save) the User's Manual , the quick reference for the user's guide, and (possibly) a few Examples

Note that the whole text portion of the ASAP website including Users Manual, System Manual and other items (except for the executables and source) code is now available in one zip file here (~ 600 k bytes). When it is unzipped keep the directory structure the same for the links to work. The executables and source code should be downloaded separately from this page.

Double Precision Executables (zipped) Compiled for:

Note that the file name indicates the number of segments by the last number with k indicating x 1000. Whether a given version will run on your machine will depend on memory available. You may have to experiment to see which is the largest version that will run.

Note that there is no limit checking built into the source code so you can feed an input file will more points and segment that a given compiled version can handle. It will appear to run but if the number of segments and nodes is excessive the run numbers will be wrong. You should always try to use the largest version that will run on your machine.

All of the double precision versions in one file (more than listed here including in between numbers of segments.) :

There isn't really any reason to use the single precision version other than the fact is uses less memory for the same size of problem. This usually isn't an issue unless a larger problem is needed. Below are two versions for single precision.

Single Precision Executables (zipped) Compiled for:

Be warned that for very large and intricate problems single precision may not work anyway due to numerical stability issues. It is always best to use the double precision version if possible.

Due to my experience with PC based compilers over the years, I must warn that there may be bugs in the executables that are not actually in the source code. However, I have not yet encountered any problems with the above files for ASAP version 3.2 which I compiled using with Open Watcom FORTRAN/77 version 1.2 for target WIN32 (NT/XP/Win95/Win32s).

*

Instructions for Executables Compiled with Open Watcom FORTRAN/77 version 1.2 for WIN32 (NT/XP/Win95/Win32s)

To use the programs compiled with Open Watcom FORTRAN/77 version 1.2 for WIN32 (NT/XP/Win95/Win32s) place the plain ASCII file of ASAP input data in same directory as the ASAP Windows executable. The input file must be renamed in.txt and the program when run will produce a file named out.txt in the same directory. Start the program by choosing FILE - RUN from the Program Manager or by double clicking on the name of the program from the directory view containing the program from "FILE MANAGER". Once the program starts, a window that looks like a command shell (DOS prompt) type window will open on the screen while the program is running. If the program analysis is short it may only momentarily flash on the screen. There is no other indication that the program is running until the window closes and the out.txt file appears in the directory with the other files. There is no user interaction with the window that opens on the screen.

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

Older Compiled Versions.

Older Compiled versions from ASAP 3.1 available here for downloading in the event that version 3.2 files don't work for you. I am not maintaining these any more. They should run on any IBM PC or 100% compatible subject to the minimum requirements below. (Note: there are problems running on MS Windows 98 see below). The several compiled versions for the PC were compiled with the number of segments as indicated. Be sure to read the directions below on how to run the executables which is after the download links below.

DOS shell version of the Version 3.1 Single Precision - 250 segment max. asap250.zip (112485 bytes) Compiled with MS FORTRAN V5.1
Window shell version of the Version 3.1 Single Precision - 1000 segment max. asapw1k.zip (155982 bytes) Compiled with MS FORTRAN V5.1
Window shell version of the Version 3.1 Single Precision - 1400 segment max. asapw1k4.zip (155550 bytes) Compiled with MS FORTRAN V5.1
Window shell version of the Version 3.1D Double Precision - 700 segment max. asap700d.zip (156442 bytes) Compiled with MS FORTRAN V5.1
-

*** Be sure to check the instructions below on how to run these executables. ***

Due to my experience with PC based compilers over the years, I must warn that there may be bugs in the executables that are not actually in the source code. The 4 executables provided above from ASAP version 3.1 were compiled with Microsoft FORTRAN Development System Version 5.1. These may not run on all versions of operating systems (see instuctions for Windows versions below).

In order to get a successful compile with the Microsoft FORTRAN Development System Version 5.1 compiler I had to break the source code into four segments (to avoid the 64K source file limitation), turn off all size and speed optimizations, add all compile time and run time debug options, set the linker for a larger stack size and number of segments, and link the four sections together. I have tested these executables with large helix antenna problems (which make good general test cases) but it is obviously impractical to test everything. If you suspect such a bug let me know. The best way to tell is to run the same input file into a executable compiled with a different compiler or for a different computer.

I had much less problems with the Open Watcom FORTRAN/77 version 1.2 for target WIN32 (NT/XP/Win95/Win32s) but have not yet had time to fully test the executable or on what computer systems it will run. It definately runs on Windows XP but I haven't yet tested it on anything else as of this writing.

Instructions for Running Version 3.1 Executables

Instructions for DOS Based Programs compiled with the Microsoft FORTRAN Development System Version 5.1

The DOS executables for ASAP Version 3.1 require DOS version 3.0 or later. The DOS executables require at least an AT class machine or better with math coprocessor. That is an IBM PC or 100% compatible with a 80286, 80386, or 80486SX processor with math coprocessor - or - 486DX and Pentiums and later processors that have math coprocessors built-in.

To use the DOS command line based programs, place the plain ASCII file of ASAP input data in same directory as the ASAP executable. The DOS version of the program can be started by typing the name of the executable at the DOS prompt (or if in MS Windows by choosing FILE - RUN from the Windows Program Manager or by double clicking on the name of the program from a directory view containing the program).

The program will prompt:

File name missing or blank - please enter file name           
UNIT 5? 

At this point enter the name of the file that is to be the input data file and hit return. The program will then prompt:

File name missing or blank - please enter file name             
UNIT 6?                                                         

At this point enter the name of the file that is to be the output data file and hit return. The program will start running. When the program is finished the dos prompt will reappear.

There have been no reports of issues running the DOS version of the program to date.

Instructions for Windows Executables compiled with the Microsoft FORTRAN Development System Version 5.1

The "MS WINDOWS" based programs for ASAP Version 3.1 are compiled using the "QuickWin" feature of Microsoft FORTRAN Development System Version 5.1. This allows an ordinary FORTRAN programs to run "under Windows" thereby allowing access to more of the computer's memory than is easily possible with a DOS program. The WINDOWS executables run under Windows version 3.0 or later running in enhanced mode. The WINDOWS executables require at least an AT class machine or better with math coprocessor. That is an IBM PC or 100% compatible with a 80286, 80386, or 80486SX processor with math coprocessor - or - 486DX and Pentiums or later processors that have math coprocessors built-in.

  • MS Windows 98 Problems - with MS FORTRAN V5.1 versions (ASAP Version 3.1)

    There has been some difficulties getting the executables compiled using the "QuickWin" feature of Microsoft FORTRAN Development System Version 5.1 to run on (some versions of ?) MS Windows 98 which I have not had time to investigate. This is strange since it runs properly on other systems including MS Windows 3.1, Windows 95, Windows ME, Windows NT, and Windows XP (all trademarks of Microsoft in case you didn't know). The DOS version of the program does run under Windows 98 without any reported problems.

To use the WINDOW based programs for ASAP Version 3.1, place the plain ASCII file of ASAP input data in same directory as the ASAP Windows executable. Start the program by choosing FILE - RUN from the Program Manager or by double clicking on the name of the program from the directory view containing the program from "FILE MANAGER". Once the program starts, a window will appear containing the name of the program as its window title.

The program will prompt:

File name missing or blank - please enter file name           
UNIT 5? 

At this point enter the name of the file that is to be the input data file and hit return. The program will then prompt:

File name missing or blank - please enter file name             
UNIT 6?                                                         

At this point enter the name of the file that is to be the output data file and hit return. The program will start running which will be indicated by the word "Running" at the lower left corner of the windows border. When the program is finished this message will change to "Finished" and a pop-up window with the words

Program Terminated with exit code 0.
Exit Window?

There will be "Yes" and "No" buttons. Press "yes" the window quits and the output file may be examined with the editor of your choice.





Download Preprocessor

Zipped Source and executables for DOS shell version of the example preprocessor preasap.zip (34374 bytes)
{brief instructions are contained in the source code}
Source Code for the example preprocessor preasap.c (7437 bytes)




Download Website

The whole text portion of the ASAP website including Users Manual, System Manual, Examples, and other items (except for the executables and source) code is now available in one zip file here (~ 600 k bytes). When it is unzipped keep the directory structure the same for the links to work. The executables and source code should be downloaded separately from this page.





Goto Full User's Manual (from Thesis)

See also the quick reference for the user's guide.

Goto Examples page

Goto Systems Manual (Theory of Operation)

Return to ASAP Homepage

Last modified on: Monday 6 September 2004