synApps: calc

Module Owner: APS/AES/BCDA: Tim Mooney

This page is the home of the synApps calc module. This module contains support for run-time expression evaluation, similar to calcPostfix, in base, but extended to handle strings, arrays, and additional numeric operations. calc also contains the transform record, which supports multiple interdependent expressions; aSub-record-based array-interpolation support; and the swait record, which is similar to the calcout record, but it writes using ca_put_notify(), and thus can detect the completion of any processing it causes.

GitHub repository: https://github.com/epics-modules/calc

Please email any comments and bug reports to Tim Mooney, who is responsible for coordinating development and releases.

Where to find it

You can download the software from the links in the table below:

Module Version Release date EPICS Release Filename Documentation Release Notes Known Problems
R3-6-1 11/4/2015 or 3.15.1 calc_R3-6-1.tar.gz calcDocs.html calcReleaseNotes.html bugs.txt
R3-6 10/6/2015 or 3.15.1 calc_R3-6.tar.gz calcDocs.html calcReleaseNotes.html bugs.txt
R3-5 8/17/2015 or 3.15.1 calc_R3-5.tar.gz calcDocs.html calcReleaseNotes.html bugs.txt
R3-4-2-1 3/13/2015 or 3.15.1 calc_R3-4-2-1.tar.gz calcDocs.html calcReleaseNotes.html bugs.txt
R3-4-2 1/30/2015 or 3.15.1 calc_R3-4-2.tar.gz calcDocs.html calcReleaseNotes.html bugs.txt
R3-4-1 12/09/2014 or 3.15.1 calc_R3-4-1.tar.gz calcDocs.html calcReleaseNotes.html bugs.txt
R3-4 7/1/2014 calc_R3-4.tar.gz calcDocs.html calcReleaseNotes.html None.
R3-3 5/15/2014 calc_R3-3.tar.gz calcDocs.html calcReleaseNotes.html None.
R3-2 5/23/2013 calc_R3-2.tar.gz calcDocs.html calcReleaseNotes.html None.
R3-1 12/12/2012 3.14.12 or 3.15.0 calc_R3-1.tar.gz calcDocs.html calcReleaseNotes.html None.
R3-0 9/14/2012 3.14.12 or 3.15.0 calc_R3-0.tar.gz calcDocs.html calcReleaseNotes.html None.
R2-9 10/11/2011 calc_R2-9.tar.gz calcDocs.html calcReleaseNotes.html None.
R2-8 4/27/2010 3.14.11 calc_R2-8.tar.gz calcDocs.html calcReleaseNotes.html None.
R2-7 11/20/2009 3.14.10 calc_R2-7.tar.gz calcDocs.html calcReleaseNotes.html None.
R2-6-7 09/10/2008 calc_R2-6-7.tar.gz calcDocs.html calcReleaseNotes.html None.
R2-6-6 05/29/2008 calc_R2-6-6.tar.gz calcDocs.html calcReleaseNotes.html None.
R2-6-3 01/08/2007 3.14.8 calc_R2-6-3.tar.gz calcDocs.html calcReleaseNotes.html None.
R2-6-1 6/6/2006 3.14.7, .8 calc_R2-6-1.tar.gz calcDocs.html calcReleaseNotes.html None.
R2-6 5/11/2006 3.14.7, .8 calc_R2-6.tar.gz calcDocs.html calcReleaseNotes.html sCalcout and aCalcout records do not call device-support's init routine. (Fixed in R2-6-1)
R2-4 1/18/2005 3.14.7 calc_R2-4.tar.gz calcDocs.html calcReleaseNotes.html None
R2-3 3/9/2004 3.14.5 calc_R2-3.tar.gz calcDocs.html calcReleaseNotes.html None

Required Modules

calc version Requires module Release needed
sscan (optional)
autosave (optional)
seq (optional)
R2-8 or later (version # is not critical)
R5-5 or later
2.1.18 or 2.2.1 (version # is not critical)
sscan (optional)
autosave (optional)
seq (optional)
R2-8 or later (version # is not critical)
R5-5 or later
2.2 (version # is not critical)
sscan (optional)
autosave (optional)
R2-8 or later (version # is not critical)
R5-0 or later
sscan (optional)
autosave (optional)
R2-8 (version # is not critical)
R5-0 (earlier versions will not work)
sscan (optional)
autosave (optional)
R2-8 (version # is not critical)
R5-0 (earlier versions will not work)
sscan (optional)
autosave (optional)
R2-8 (version # is not critical)
R5-0 (earlier versions will not work)
sscan (optional) R2-7
sscan (optional) R2-6-6
sscan (optional) R2-6-3
sscan R2-4
sscan R2-3

Installation and Building

After obtaining a copy of the distribution, it must be installed and built for use at your site. These steps only need to be performed once for the site (unless versions of the module running under different releases of EPICS and/or the other required modules are needed).

  1. Unzip and untar the distribution, e.g. on Unix:
    gunzip calc_R2-x.tar.gz
    tar xvf calc_R2-x.tar
    Usually this is done in an EPICS 'support' directory. It will produce the subdirectory
  2. Edit the config/RELEASE file of the application that will use calc to point to this directory.
  3. Edit calc's configure/RELEASE file and set the paths to your installation of EPICS base and to your versions of the sscan module.
  4. Run gnumake in the top level directory and check for any compilation errors.
  5. Please email  Tim Mooney  so that a record can be kept of which sites are using this software.


The following documentation is available:

In Use

This software was originally developed by the APS BCDA group, other APS-affiliated developers, and many members of the EPICS Collaboration.

Suggestions and Comments to:
Tim Mooney : (mooney@aps.anl.gov)