Jump to Content
Version 1.6.2-51  

Recent ISIS Changes

 

    Changes since 1.6.2 (released Jan 2012)
    ---------------------------------------
     1.  Autogenerate code for xspec-module at configure time
     2.  Retrieve literature references from atomdb "ionrec" files.
     3.  Update xspec module code generator for heasoft-6.12 release.
     4.  Fix energy level label truncation bug.  AtomDB energy level
         labels now contain spaces.  However, the code assumed that
         there were no embedded spaces, so the labels were being wrongly
         truncated at the first embedded space.
     5.  Add support parametrized software RMFs with fittable parameters
         (for calibration work).
     6.  Add assign_back, unassign_back
     7.  Xspec module was sometimes linking to the wrong library symbol
     8.  New load_data qualifier supports loading BACKGROUND_UP/DOWN columns
     9.  Introduce more consistent model definition for flux-corrected data
         (see fit_flux).
    10.  Support setting per-dataset minimum stat_err via load_data qualifier
    11.  Fix bug associated with change #9 above (variable sometimes
         uninitialized)
    12.  Fix indexing bug associated with handling ignore/notice in
         change #9 above.
    13.  get_fit_statistic was returning NULL for slang fit statistics
    14.  Fix definition of maximum likelihood statistic introduced in
         1.6.1-38
    15.  'errorbars' should control plotting of error bars in
         rplot_counts and rplot_flux
    16.  Update xspec module for heasoft-6.13/xspec-12.8 release.
    17.  Explicitly link Fortran libraries to avoid run-time link
         error on new Mac OS X systems.
    18.  New access functions: get_back_model, get_back_data,
         get_back_data_scale_factor
    19.  conf_loop fits flux-corrected data when 'flux' qualifier
         is present
    20.  Support fit statistic with explicit dependence on background
         (e.g. wstat)
    21.  Bug-fix: When several different models were defined using
         set_par_fun to assign a different function to the same
         parameter index in each model (e.g. param #5 in each
         model), the parameter functions assigned to that index
         weren't always being restored correctly upon each switch
         to a previously defined fit-function.  This happened
         because the names chosen for the corresponding
         auto-generated temporary S-Lang functions were not
         sufficiently varied (making function name collisions quite
         likely under these conditions).  With this fix, the
         temporary function names include an md5 checksum and so
         are (almost) certain to be unique.
    22.  Warn about using non-chi-square fit statistic with mpfit/lmdif.
    23.  Modify implementation of #21 to improve back-compatibility.
    24.  Update cfitsio module.
    25.  Fix back-compatibility issue from #23. Sigh.
    26.  Modify configure script to ensure RPATH is set on Mac OS X.
    27.  Code cleanup to eliminate compiler warnings;
         drop modules/xspec/src/xspec-compat.inc
    28.  Removed half-pixel offset in contour plots.  This offset
         was introduced in 1.0.9 to workaround a bug (change #42
         following the 1.0.8 release), but the workaround is
         apparently no longer needed.
    29.  cache_fun now supports caching of operator models.
    30.  Updates to support heasoft-6.16
    31.  Updates to support heasoft-6.17
    32.  Regarding BACKGROUND_UP/DOWN, changed background definition
         from:
          back = BACKGROUND_UP/BACKSCUP + BACKGROUND_DOWN/BACKSCDN
         to:
          back = (BACKGROUND_UP + BACKGROUND_DOWN)
                 /(BACKSCUP + BACKSCDN)
    32.Mh1. Fix option string update for fit-method "simann".
    32.td1. Fix a bug when parsing the lmodel.dat file and loading
            local models
    33.  Merge 32.Mh1, 32.td1 changes into main isis distribution.
         Added pgtick wrapper; updated copyright notices and load_rmf
         documentation.
    34.  src/db-atomic.c: Change int variable to size_t to avoid integer
         overflow when loading full atomdb-v3.0.3
    35.  src/db-cie.c: Increase DEFAULT_HASH_TABLE_SIZE_HINT to better
         handle larger line list in atomdb-v3.0.3
    36.  src/db-atomic.c: Change int variable to size_t to avoid integer
         overflow when loading atomdb
    37.  Updates to support heasoft-6.20
    38.  Use fits_read_key_longstr to read file paths for RESPFILE,
         ANCRFILE, BACKFILE keywords.
    39.  xspec module: new lmodel keyword for load_xspec_local_models,
         build_xspec_local_models.  Also, update etc/aped.sl to read
         a versioned ionization balance filename.
    40.  xspec module supports xspec_rename_model_hook to rename
         xspec models provided to isis.
    41.  Updates to support heasoft-6.23
    41.td1. gainshift kernel can have negative energy offsets as long
    	as the resulting energy grid consists entirely of positive
    	values
    41.td2. update xspec module tabint interface
    42.  Updates to support heasoft-6.25
    43.  Rewrite configure script logic to manage linking libpng for pgplot
    43.td1 Implements complex type as columns in the cfitsio module
    44.  Handle SIGABRT signal from xspec function failure, and print
         an informative error message.
    45.  Updates to support heasoft-6.27
    46.  Apply xspec module patches from Jakob Stierhof:
         - fix bug in interface to xspec tabint function
         - avoid potential invalid free on exit
         - add exponential table model
    47.  Add fit object parameter access function [from Jakob Stierhof]
    48.  Apply xspec module patches from Jakob Stierhof:
         - heasoft-6.29 release moved xsFortran.h
         - heasoft-6.29 release broke CFITSIO_VERSION; workaround
           computes a floating point version number.
         Also:
         * Update xspec module for heasoft-6.29 release
         * Configure script checks for slsh on command path
    49.  Fix aped_bib to check that reference files listed in the APED
         filemap exist in APED before attempting to read
    50.  Apply xspec module patch from Jakob Stierhof:
           - update XSPEC12_TABLE_MODEL_FUN macro with const declarations
    51.  Updates to support heasoft-6.30 release

    Changes since 1.6.1 (released Jul 2010)
    ---------------------------------------
     1.  get_params now works with regular expressions, for example:
             p = get_params ("mekal(1).*");
     2.  xspec module cleanup.  Fortran name mangling scheme now
         determined at configure time.
     3.  save_input now takes a File_Type pointer
     4.  Some isis intrinsics were previously available under two
         names, one deprecated.  The following deprecated names
         have been removed: iback_fun, _define_bgd, define_bgd. The
         corresponding supported names are: back_fun, _define_back,
         define_back.
     5.  The path to a site-local setup script can now be specified
         at configure time using --with-local-setup=FILE.  The
         specified FILE will be automatically loaded at isis
         startup.
     6.  Add --with-xspec-modelsonly configure option
     7.  Contours overplotted on a subset of a 2D array were being
         plotted incorrectly.
     8.  Don't generate an error when a model parameter value,
         obtained from a function evaluation, falls outside the
         assigned min/max range (see set_par_fun). Instead, the out
         of range value will be ignored and a warning message will
         be printed if Isis_Verbose>0.
     9.  Revise error handling introduced in #8 to interrupt
         model evaluation when derived parameters are out of range.
    10.  eval_fun2 wasn't validating the fitfun reference before
         attempting to use it.
    11.  mpfit exit status was not being signaled correctly.
    12.  Support for updated aped database.
    13.  Support simultaneously loading multiple spectroscopy databases.
         New intrinsics:  db_push, db_list, db_select
    14.  Plot energy levels with missing LS quantum numbers.
    15.  line_info returns more energy level details
    16.  create_aped_fun now supports user-defined ionization balance
         (create_aped_ionpop_modifier, aped_ionpop_modifier_args).
    17.  Fix array indexing bug in ionpop modifier introduced in #16
    18.  Added xspec_noneq() function.
    19.  Don't generate NaN when ion fraction rescaling involves 0/0.
    20.  Updated cfitsio module to version 0.4.7
    21.  Change #13 moved the slang print function into the _isis
         namespace.  It should be in the isis namespace.
    22.  Setting parameter min=max=0 means "unlimited range" but
         that setting should respect the hard limits.
    23.  conf_map_counts provides new a 'flood' algorithm (contributed
         by Manfred Hanke and Moritz Böck).  The 'flood' algorithm
         traverses the 2D parameter region by expanding away from the
         best fit point, taking initial free parameter values from
         a nearby fit.  In contrast, the default algorithm performs a
         raster scan of the 2D region, taking initial free parameter
         values from the best fit point.
    24.  Support passing qualifiers to fit-functions implemented in slang
    25.  array_fit should not assume input parameters are Double_Type
    26.  New intrinsics __rline_init_tty, __rline_reset_tty will be
         used by readline in an upcoming slang release.
    27.  Support AREASCAL keyword (AREASCAL column was already supported)
    28.  Get more versatile 'unique' function from slsh:setfuns.sl
    29.  pileup kernel wasn't properly evaluating dataset-specific models
    30.  regroup_file: improve OGIP standard compliance.
    31.  New --stkchk command-line option invokes S-Lang stack checker
    32.  Parallel conf map calculation could start too many slaves.
    33.  The structure returned by get_combined2 now contains a
         spectral grid and the data values are unpacked.
    34.  plot_conf now supports user-specified contour colors.
    35.  Pileup kernel will now generate an error if used with
         an rsp matrix; the response must be factored into separate
         arf and rmf components.
    36.  Remove xspec11 legacy table model code;  the xspec12 library
         has provided the identical interface since March 2010.
    37.  Choose more sensible confmap parameter grids.
    38.  Add Poisson maximum likelihood statistic "ml"
    39.  Fix memory leak associated with xspec local models
    40.  Restore etable model support to xspec module (add_etable_model)
    41.  Update xspec module to match heasoft-6.11/xspec-12.7
    42.  Update atomdb regression test for atomdb-v2.0.1 release
    43.  add_slang_statistic now provides delta_is_chisqr qualifier
    44.  list_par prints function name even when there are no parameters
    45.  Provide xspec_config_hook
    46.  Fix bug in apec spectral models introduced in 1.6.1-19
         (Oct 2010). This bug removed the relative abundance
         scaling factor from continuum spectral components in apec
         spectral models defined using create_aped_fun.  As a
         result, continuum components in these models were always
         included with the default cosmic abundance. A new
         regression test has been added to prevent any future
         reoccurrence of this problem.
    47.  Added __set_fitfun_trace_hook
    48.  To avoid fortran global namespace collisions, prefixed
         all internal isis fortran symbols with 'isis_'.
    49.  xspec_abund wasn't working with user-defined abundance tables.
    50.  Simplify xspec model symbol lookup.
    51.  fork_slaves, manage_slaves provide more control options
         through new qualifiers.
    52.  New parallel_map function.
    53.  Update configure and install instructions to support
         MacOS 10.7 (Lion)
    54.  Change interface of fit_counts, renorm_counts, fit_flux,
         renorm_flux to use a qualifier instead of an optional
         function parameter to select response_type, e.g. Ideal_ARF
    55.  set_par supports setting min/max via qualifiers
    56.  Apply patch from John E. Davis to fix floating point overflow
         bug in pileup kernel
    57.  When running in parallel, conf_loop should have been passing
         all parameters between master and slave processes and not just
         the selected parameters.

    Changes since 1.6.0 (released Apr 2010)
    ---------------------------------------
     1.  xspec module more closely adheres to local model naming convention
     2.  Fixed NULL dereference bug (copy_covariance_matrix)
     3.  array_fit: internally, force 'pars' to be an array and don't
         overwrite it on return.
     4.  A list of summed spectra and models associated with combine_datasets
         is now stored internally.  See get_combined2.
     5.  Provided a means to modify data and model spectra immediately
         before they are summed by combine_datasets. See set_pre_combine_hook.
     6.  set_sys_err_frac now accepts a scalar value
     7.  Error bars in histogram plots now include systematic error
         added in quadrature.
     8.  Added slang rmf support (contributed by John E. Davis).
     9.  Added 0.5 pixel correction to reference coordinate in confmap
         WCS header (contributed by Manfred Hanke).
    10.  Added support for response, flux qualifiers to all routines
         that perform forward folding including conf, conf_loop, etc.
    11.  New intrinsics: set_rebin_error_method, get_rebin_error_hook
    12.  Changed set_hard_limits to __set_hard_limits
           * arbitrary changes to hard limits are now supported
           * hard limits can be changed either for a specific instance
             of a model or for the default configuration of a model.
             In the latter case, all subsequent instances of the model
             will be affected.
    13.  Fix parameter table vs. dataset list synchronization bug.
    14.  set_par should respect tied parameters.
    15.  Improved synchronization between dataset list and fit parameter list.
    16.  set_par() should warn about attempts to change tied parameters;
         set_params should be able to create/destroy parameter ties
    17.  Revert part of #16 - set_par once again silently ignores
         attempts to change tied parameters.
    18.  Fix bug introduced by recent changes to handling of tied
         parameters:  load_par/edit_par can once again untie parameters.
         Added a regression test to make sure this feature doesn't get
         broken again.
    19.  conf_loop now defaults to operating on all free parameters.
         Setting Fit_Verbose<0 now reduces verbosity during a fit.
    20.  create_aped_fun: elemental abundance parameter names now have
         'abund_' prefix.  Use qualifier 'no_abund_prefix' to drop this
         prefix (for back-compatibility).
    21.  set_par was not modifying 'step'
    22.  The set_par interface was modified so that the absolute
         initial parameter step size, 'step', is now specified
         using a qualifier.  A 'relstep' qualifier was added
         to enable setting the relative parameter step size.
         The 'relstep' value may be obtained using get_par_info()
         and get_params(). It may also be set using set_params().

         mpfit was previously configured to use an initial relative
         parameter step size of 1% (e.g. relstep=0.01). This is a
         bad choice for fits where the min/max range is smaller
         than 1% of the parameter value and also for parameters
         constrained to better than 1% by the available data. The
         fitted center position of strong emission lines in high
         quality grating data falls into this latter category.

         The default relstep value used by mpfit is now specified
         on a per-parameter basis and may be user-specified.
         For xspec functions, the default is set by the intrinsic
         variable Isis_Default_Relstep, which defaults to 1.e-4.

    Changes since 1.5.0 (released Aug 2009)
    ---------------------------------------
     1.  Fixed bug passing string argument to xspec_elabund (xspec.sl)
     2.  Updates for heasoft-6.7 release.
          - link in libxanlib to resolve udmget
          - re-run code generator to update spectral model interfaces
     3.  "-v" command-line argument should be order-independent
     4.  On Macs, libxanlib is a static library (see #2)
     5.  -g option should set _traceback=1 in interactive mode.
     6.  apropos now lists variables as well as functions
     7.  xspec module: drop libxanlib link (see #2 and #4) and
         provide udmget.c from ftools/xanlib/memory.
     8.  Provide default directory for fit_search output.
     9.  added _num_statistic_evaluations intrinsic variable
    10.  Added support for specifying initial parameter step size.
         See set_par, get_par_info, get_fun_info, set_param_default_hook
    11.  New optimization methods contributed by John E. Davis:
           diffevol, powell, simplex
    12.  Updated cfitsio module to version 0.4.6
    13.  Minor change to slang optimization method interface.
    14.  Fixed plm bug introduced by #13:  best-fit parameters were
         being found, but not returned.
    15.  Added support for hard limits on fit parameters.
    16.  warn when selected bintable columns lack TUNIT keyword
    17.  Insert missing parens to fix bug in 'group' function background
         scaling.
    18.  Better diagnostics for xspec module local model link errors
    19.  Added assign_model intrinsic.
    20.  group:  change min_sn default to min_sn=0
    21.  Added set_hard_limits to allow changing parameter hard limits
    22.  Updated cfitsio module to version 0.4.6-0
    23.  Change error handling behavior for isis-intrinsic fit functions.
    24.  Fix bug reported by Manfred Hanke:  load_par can now untie
         parameters
    25.  Added set_back_exposure() intrinsic
    26.  Updated xspec module interface on heasoft-6.9 release
    27.  new interpol qualifier controls alternate extrapolation methods
    28.  Added mpfit optimization method.  Removed lmdif, providing
         a backward-compatible lmdif interface that invokes mpfit.
    29.  Fix bug in array_fit interface (par_step passed as NULL)

    pre1.5.0
     1.  Added support for parallel processing via fork and select.
         New functions:  new_slave_list, fork_slave, append_slave,
                         manage_slaves, send_msg, recv_msg,
                         read_array, write_array
     2.  Parallelized conf_map_counts and conf_map_flux.
         On multi-core machines, these functions use all available
         cores by default.  See the documentation for details.
     3.  xspec module now defaults to xspec 12.
     4.  Added Allow_Multiple_Arf_Factors intrinsic variable.
     5.  Added support for non-standard FITS keywords appearing in
         INTEGRAL data.
     6.  slang-2.2 is now a minimum requirement
     7.  New functions based on contributions from Mike Nowak:
          group, group_bin, ignore_values, notice_values, conf_loop
         Parallelized conf_loop.
     8.  Use require.sl from slang distribution
     9.  Added parallel Levenberg-Marquardt optimization method (plm).
    10.  Removed cfortran.h.  Use autoconf C/Fortran interface.
    11.  Changes to support compiling isis with a C++ compiler.
    12.  Look in RMF primary header for XMM/RGS RFLORDER keyword.
    13.  Parallelized fit_search
    14.  Adjust formatting of list_data, list_arf output
    15.  Fix for table model interface bug introduced by #10
         (passing strings from C to Fortran)
    16.  fit_fun(NULL) deletes current model definition.

    Changes since 1.4.9 (released Nov 2007)
    ---------------------------------------
     1.  Fixed cfitsio module bug (fits_write_binary_table)
     2.  Restored support for mt_calc_model optional arguments
         contrib_flag and line_list.
     3.  Added stub for Tcl_PkgProvide to enable loading xspec12
         local models; updated interface for _load_xspec_local_models().
     4.  Minor changes to support building isis on cygwin.
     5.  Fixed edit_par bug that could un-define the current model
     6.  Fixed bug that that prevented saving the S-Lang readline history.
     7.  Fixed memory leak in median function.
     8.  Xspec module code generator now handles model.dat files that
         don't end with a blank line.
     9.  Updated RMF file input code to support change in OGIP standard;
         F_CHAN values, previously 2 bytes, may now be 4 bytes.
    10.  Fixed sign error in poisson random generator (src/random.c);
         constant -0.059 had the wrong sign.
    11.  Fixed plot_quit bug that disabled all subsequent plotting.
    12.  Slang errors now generate one line of traceback by default.
    13.  Fixed bug in model_spectrum interface, presumably broken
         since the introduction of line modifiers.
    14.  Fixed error handling bug in atomic database input code.
    15.  Update cfitsio module
    16.  Another cfitsio module update; fixed bug in handling of
         isis_set_par_hook
    17.  load_data was failing when the 2nd parameter was an array of
         length one.
    18.  Fixed array indexing bug in conf_joint.
    19.  Added NULL pointer check to src/histogram.c:Hist_get_flux_corr_weights
    20.  Added maplib module (contributed by John E. Davis)
    21.  Added support for systematic errors.
    22.  Update cfitsio module to version 0.4.3
    23.  Support linking to pgplot and cfitsio in HEASOFT distribution
    24.  Update default search path definition.
    25.  load_par provides more informative error messages
    26.  automatically install wrapper script on Darwin
    27.  If defined, isis_interactive_hook() will be called when
         interactive command-line processing begins;  _traceback=0 is
         the new default for interactive mode.
    28.  Added gainshift kernel.
    29.  configure options --with-pgplot and --with-cfitsio should override
         --with-headas
    30.  Added set_define_model_hook
    31.  Optimized rmf_file.c:rebin_rmf() for speed.
    32.  Fixed bug in egauss that appeared for sigma < 1.e-6 keV.
    33.  Added get_back_exposure function
    34.  Update cfitsio module to version 0.4.4
    35.  Patch to better support wildcards in parameter lists
         (contributed by Manfred Hanke)
    36.  Replaced minim fit method with simann, simulated annealing
    37.  Fixed eval_fun bug - tied parameter values were not getting
         updated.
    38.  Update xspec module to support changes new with xspec-12.5.0.
    39.  New cache_fun() and alias_fun() intrinsics, contributed
         by Mike Noble, Mike Nowak and Manfred Hanke.
         cache_fun() enables caching of spectral models, reducing
         redundant model evaluations during e.g. confidence limit searches.
         alias_fun() enables renaming spectral models and model
         parameters and changing parameter defaults.
    40.  Applied patch to retrieve help files using the S-Lang
         add_doc_file() intrinsic (from Mike Noble)
    41.  Added support for displaying xspec12 help files, either pdf
         or html.
    42.  Improved support for xspec12 local models
    43.  At the isis prompt, __argc,__argv now contains the full input
         command line
    44.  Fix xspec module bug: xspec12 local models implemented in
         C or C++ were being linked through the wrong interface.
    45.  Support the double-precision fortran interface for xspec
         local models
    46.  Fixed confusing interaction between fakeit and grouping
    47.  Fixed malloc bug in xspec module.
    48.  Added support for xspec model init strings.
    49.  Xspec model names are now case-sensitive; some lower-case
         aliases are provided for back-compatibility.
    50.  New functions, aped_bib, aped_bib_query_string, provide
         access to APED database literature references.
    51.  New function, aped_fun_details, provides access to
         individual emission line flux contributions from each
         temperature-density component of every spectral model component
    52.  New functions, aped_line_modifier_args, aped_line_profile_args,
         aped_hook_args simplify eval_fun2 evaluation of aped
         functions
    53.  Updated cfitsio module to get fix for reading vector string
         columns
    54.  PHA file input now looks for the hdu with EXTNAME=SPECTRUM,
         instead of moving to hdu=2.
    55.  Support BACKFILE keyword in Type I pha files.  To ignore
         this keyword, set Ignore_PHA_Backfile_Keyword=1.
         Also, Isis_List_Filenames now defaults to 1.

    Changes since 1.4.8 (released Sept 2007)
    ---------------------------------------
     1.  If a script contains an isis_main() function, isis will
         execute that function and exit. If the --force-interactive
         option is used, isis will prompt for input after executing
         isis_main().  Executable scripts can now use
               #! /usr/bin/env isis
         isis-script is no longer required.
     2.  Added support for the S-Lang debugger.  Use the --sldb
         command-line option to invoke the debugger.
     3.  Added support for the S-Lang profiler.  Use the --prof
         command-line option to invoke the profiler.
     4.  create_aped_line_modifier now supports modifiers that
         take additional user-defined arguments.
     5.  xspec table models now load parameter defaults from the
         table file.
     6.  Changed line modifier interface to provide plasma state
         information.
     7.  Changed line profile interface to make it more general
     8.  Line profile and line modifier interfaces both support
         functions that take no parameters.
     9.  Changes to support analysis of INTEGRAL data.
    10.  Reorganized xspec module build/install logic
    11.  Added xspec 12 model list to the source code distribution
         (it's no longer necessary to run the xspec module code
         generator to use isis with xspec 12.)
    12.  Improved performance of APED spectral models that use a line modifier
    13.  isis-script --sldb foo.sl runs isis_main automatically.
    14.  Fixed assign_rsp bug.  First listed RMF was not re-defining
         the dataset grid when multiple RMFs were assigned to one dataset.
    15.  All internal pgplot calls now use the pgplot module.
    16.  Removed obsolete gpileup kernel module.
    17.  Updated cfitsio module

    Changes since 1.4.7 (released June 2007)
    ---------------------------------------
     1.  add_abundances handles necessary typecasts
     2.  Help hooks now return strings
     3.  Fixed potential double-free bug in error handling code
          hist-cmds.c:set_notice_using_mask, set_notice_using_list
     4.  Models for flux-corrected data should not include the
         instrumental background.
     5.  If present, rebin_error_hook manages error propagation
         associated with the background (see set_rebin_error_hook).
     6.  Added support for AREASCAL column in PHA files.
     7.  APED spectral models now support user-defined modification
         of line emissivity functions, with fittable parameters.
         See the create_aped_fun() documentation for details.
     8.  APED spectral models now support user-defined line profiles.
         See the create_aped_fun() documentation for details.

    Changes since 1.4.6 (released May 2007)
    ---------------------------------------
     1.  Xspec module now provides better access to elemental
         abundances, photoionization cross-sections and NEI ionization
         fractions.  (See xspec_elabund, xspec_gphoto, xspec_ionsneqr,
         xspec_phfit2, xspec_photo)

    Changes since 1.4.5 (released Mar 2007)
    ---------------------------------------
     1.  Updated cfitsio module to version 0.3.5
     2.  Added put_model_counts, put_model_flux, put_convolved_model_flux
     3.  Added eval_stat_counts, eval_stat_flux
     4.  Clearer load_par warning when model string exceeds input buffer size
     5.  Prompt text is ignored if it appears as a prefix on the
         command line in interactive mode.
     6.  Fixed bug in application of optional weights in combine_datasets.
         Weights had been applied to both model and data sums.  Now, the
         weights are applied only to the data sum.
     7.  Added yshift kernel
     8.  Expanded documentation for get_combined to clarify how it
         might be used with spectra in flux units.
     9.  Voigt profile norm now includes factor 1/(sqrt(PI)*Doppler_width)
         (set Isis_Voigt_Is_Normalized=0 to restore the previous behavior)
    10.  Added get_cfun2
    11.  Replaced list_par, save_par, list_data, list_arf, list_rmf with
         slang implementations that provide more versatile output redirection
    12.  Added get_flux_corr_weights
    13.  Updated cfitsio module to version 0.3.8rc1

    Changes since 1.4.4 (released Feb 2007)
    ---------------------------------------
     1.  Added backtrace capability
     2.  Added pha-grouping functions from Mike Nowak
         (regroup_file, use_file_group, i2x_group, x2i_group)
         along with new intrinsic variable, Isis_Use_PHA_Grouping.
     3.  Updated autoconf support for Fortran.  Fortran compiler
         and flags are now specified with FC and FCFLAGS instead of
         F77 and FFLAGS.

    Changes since 1.4.3 (released Jan 2007)
    ---------------------------------------
     1.  Error handling uses S-Lang exceptions more consistently
     2.  Installation procedure should be simpler.
     3.  fit_flux is independent of the fit-kernel.

    Changes since 1.4.2 (released Sep 2006)
    ---------------------------------------
     1.  Numbering of fake datasets should not cause the dataset
         list to get out of order.
     2.  set_plot_options(get_plot_options()) is a no-op.
     3.  flux_corr skips ignored data
     4.  xspec.sl is idempotent
     5.  Static-linking the xspec module works again.
     6.  Added get_outer_viewport, set_outer_viewport.
         ** Note that in the past, the low-level pgplot function
            _pgsvp was often used to set the viewport for plots
            created using isis intrinsic plot functions.  With this
            change, _pgsvp will no longer have the desired effect
            on these plots. Use set_outer_viewport instead of _pgsvp.
     7.  Changed handling of command-line arguments by isis-script.
         Scripts no longer intercept command line arguments supported
         by isis.
     8.  Removed -l command-line option.

    Changes since 1.4.1 (released Sep 2006)
    ---------------------------------------
     1.  Ignored data ranges are now omitted from plots
         rather than being plotted as all zeros.
     2.  Loading a parameter file can now over-ride parameter functions
     3.  In batch mode, a function named isis_main or slsh_main will
         be called automatically, unless over-ridden by the '-t'
         command-line argument.
     4.  The configure script includes more thorough checks for
         compatibility of GNU readline libraries.
     5.  Binary packages can now find glob.sl

    Changes since 1.3.4 (released Jul 2006)
    ---------------------------------------
     1.  Added atexit() function.
     2.  Added set_prompt() function (from Mike Noble)
     3.  set_par() now supports regular expressions (based on
         code from John E. Davis).
     4.  oplot behaves like plot if no plots have been drawn
         (from Mike Noble)
     5.  Extensive rewrite of xspec module; added support for
         new model interfaces introduced with xspec12.
     6.  Added support for reading BACKSCAL, BG_COUNTS and
         BG_AREA columns from type I and type II PHA files.
     7.  Refined computation of background uncertainties
         under rebinning; dropped the Gehrels approximation for
         the background uncertainty when the number of background
         counts is small.

    Changes since 1.3.3 (released Apr 2006)
    ---------------------------------------
     1.  Added eval_fun2() to support evaluating a fit-function
         on an arbitrary grid without modifying the current
         fit_fun() definition.
     2.  add_slang_function() now supports functions defined by
         reference.
     3.  set_param_default_hook() now supports passing additional
         arguments to the parameter default hook.
     4.  get_fit_method() and get_fit_statistic() now return
         strings containing the complete, current option settings.
     5.  Operator functions should now be invoked as
          operator(id, operand(k)) instead of
          operator(operand(k), id)
         In other words, the integer index should be the first
         argument.
     6.  Fit-functions can now take arbitrary additional parameters.
         For example, something like this:
            fit_fun ("foo(1, &bar, array, baz(1))");
         is now supported.  For details, see the add_slang_function
         documentation.
     7.  Added GNU readline support (based on patches from Mike Noble)

    Changes since 1.3.2 (released Jan 2006)
    ---------------------------------------
     1.  set_rebin_error_hook now takes a reference to a function
     2.  updated --with-ciao configure option
     3.  Fixed bug in propagation of background uncertainties for
         rebinned data.
     4.  Added Gehrels_Threshold intrinsic variable to provide
         more control over handling of uncertainties in low-count
         data.

    Changes since 1.3.1 (released Nov 2005)
    ---------------------------------------
     1.  xspec module now supports xspec12
     2.  Added support for fit-constraints (see set_fit_constraint)
     3.  cursor returns values which account for log-scale axes
     4.  Added get_plot_options/set_plot_options

    Changes since 1.3.0 (released Sep 2005)
    ---------------------------------------
     1.  Modified region_counts/region_flux to handle both emission
         and absorption features.
     2.  Modified internal algorithm for rebinning flux-corrected data
         allowing rebin_data/group_data to automatically rebin
         flux-corrected data without running flux_corr again.
     3.  Added isis_fit_improved_hook feature (see conf)

    Changes since 1.2.9 (released Jun 2005)
    ---------------------------------------
     1.  Changed the method used to set parameter defaults for
         S-Lang fit-functions.  See set_param_default_hook().
     2.  Added Voigt profile fit-function
     3.  Modified internal parameter handling logic to better support
         re-defining fit-functions.  Tied parameters are now more
         robust against changes in the fitted model.

    Changes since 1.2.8 (released Apr 2005)
    ---------------------------------------
     1.  Support more intuitive syntax in set_par_fun() 2nd argument.
         See set_par_fun() help page for details.
     2.  Update xspec module to support HEASOFT-6.0
     3.  Update to slang2 definition of require/provide
     4.  Update to include slang2 help-file support
     5.  Prompt namespace is now named "isis"
     6.  Added support for backscale vectors defined via _define_bgd
         and set_data_backscale.
     7.  Handling of multiple merged grids should now work as
         advertised.  Earlier versions used the first merged grid
         encountered for all subsequent cases.

    Changes since 1.2.7 (released Mar 2005)
    ---------------------------------------
     1.  Update cfitsio module (slcfitsio-0.3.2)
     2.  Added rebin_combined()
     3.  Added support for slang-2 debugger.
     4.  Added fit-method "minim" (alternate simplex algorithm)
     5.  Removed internal limit to support reading RMFs from Swift

    Changes since 1.2.6 (released Jan 2005)
    ---------------------------------------
     1.  Added set_dataset_metadata/get_dataset_metadata,
         load_data_hook, list_data_hook
     2.  Fixed bug in rebin_data() associated with handling of rebin
         masks with zeros at the short wavelength end.
     3.  Fixed bug introduced by recent changing in handling of
         zero-based norm indices in add_slang_function.
     4.  Updated --with-ciao option to work with new Ciao release;
         see the INSTALL.txt file for details.
     5.  Added support for comment header in fit-model parameter files
         (comment lines have long been supported, just not as a
         header, preceding the model definition line).
     6.  pgplot module intrinsics are working again on Mac OS X.
     7.  Uncertainties computed for background-subtracted, rebinned,
         flux-corrected data now properly includes the background
         contribution.
     8.  Fixed obscure bug in fit-parameter lookups when fit-functions
         are redefined multiple times while in use.
     9.  Added isis_start_eval_hook()
    10.  New intrinsic variable Ignore_PHA_Response_Keywords.
         If non-zero, isis will ignore the ANCRFILE and RESPFILE
         keywords in PHA file headers.  Default value is zero.
    11.  New intrinsic variable Rmf_OGIP_Compliance.
         If zero, isis will require less strict adherence to the
         OGIP standard format for RMFs.
    12.  Update cfitsio module;  new version includes many
         improvements and greatly expanded documentation.
    13.  Update pgplot module;  the handling of 2D arrays changed.
    14.  rebin_dataset now supports rebinning the background

    Changes since 1.2.4 (released Nov 2004)
    ---------------------------------------
     1.  Updated cfitsio module
     2.  Better handling of ylog/yrange transitions in rplot_counts/rplot_flux
     3.  Use unit exposure time when fitting flux-corrected data.
     4.  Added better Levenberg-Marquardt implementation (lmdif);
         the previous implementation is still available, in part
         because it provides certain features not available with lmdif.
     5.  add_slang_function now uses zero-based indices to specify
         norm parameters
     6.  Added --with-atomdb configure option to specify path at compile time

    Changes since 1.2.2 (released Jul 2004)
    ---------------------------------------
     1.  Update xspec module to support built-in local models.
     2.  Updated install documentation to resolve potential
         Mac OS X build problems.
     3.  Added support for setting plot symbol size independent of
         character height; see point_size();
     4.  Plot color 0 now correctly gives the default background color
     5.  Internal changes to support migration to slang-2.0
     6.  Support kernel option to control model computation
         in ignored energy ranges during fitting.
     7.  Rebinned RMFs now use threshold=0 to avoid resolution problems.

    Changes since 1.2.1 (released Apr 2004)
    ---------------------------------------
     1.  Fix bug in application of s/n threshold during
         flux-correction of rebinned data.
     2.  Added isis_set_par_hook()
     3.  Added functions get_rmf_arf_grid(), get_rmf_data_grid()
     4.  Added support for user-defined model evaluation grids,
         primarily to support extended grids for convolution models.
         See set_eval_grid_method()
     5.  Added isis_prefit_hook().
     6.  Added add_abundances() function.
     7.  get_abundances() now returns a Struct_Type.
     8.  Fixed bug in single-parameter confidence limits computation:
         When confidence limits were computed for one of only two
         variable parameters, the remaining free parameter was not
         varied during the fit.  With the bug-fix, the free parameter
         is varied correctly.
     9.  New function mt_create_from_struct()

    Changes since 1.1.8 (released Feb 2004)
    ---------------------------------------
     1. set_rebin_error_hook(id,NULL) now works as it should
     2. Fit parameter names are now parsed on input
     3. Added _phabs to xspec-module; _wabs now returns wabs
        instead of phabs.
     4. Resolved ambiguity in definition of model_flux by
        introducing "convolved_model_flux".  Now, model_flux
        always means \int dE S(E) -- the physical spectrum model
        integrated over the bin width.  The convolved_model_flux
        is this function folded through the RMF, \int dE R(h,E)S(E),
        and is useful primarily when dealing with flux-corrected
        data.  Functions have been provided to get, plot and
        oplot this quantity.
     5. Added optimization to improve performance when fitting
        multiple datasets with overlapping wavelength grids.
        See set_eval_grid_method().
     6. Modified rebin_data to ensure that the mask array includes
        trailing noticed bins (at the long wavelength end)
        containing zero counts into the last "good" bin

    Changes since 1.1.7 (released Nov 2003)
    ----------------------------------------
     1. Added frame_time to get_data_info() structure
     2. Fixed bug in temp storage allocation logic when combining datasets
     3. prand() no longer modifies array arguments
     4. Added list_free function to list only free parameters
     5. xylabel now works transparently with log axis scales
     6. Added support for lheasoft-5.3
     7. Corrected cash statistic handling of cases model=0 or data=0
     8. New connect_points() option suppresses plotting of points,
        drawing the line only.

    Changes since 1.1.6 (released Sep 2003)
    ----------------------------------------
     1. flux_corr_model_counts() now populates the model_flux
        rather than the data_flux.
     2. Bugfix - under certain conditions, closing a non-existent plot
        window and then opening a plot window could cause a segv.
     3. interpol() wasn't extrapolating properly.

    Changes since 1.1.5 (released Aug 2003)
    ----------------------------------------
     1. Changed definition of reverse indices for both
        histogram and histogram2d.  The dimensions of the
        histogram2d result now match the input grid sizes.
     2. seed_random() bugfix.
     3. set_arf_info() bugfix.  It was incorrectly modifying
        the ARF size.

    Changes since 1.1.4 (released July 2003)
    ----------------------------------------
     1. Support optional weight argument for combine_datasets()
     2. Add get_combined() function to simplify handling
        dataset combinations.
     3. Added set_post_model_hook ()
     4. Fixed obscure isis bug which could cause a segv if
        flux_corr() were called from inside a fit-function.
     5. Enhanced set_par(), assign_arf(), assign_rmf() to
        handle more combinations of vector parameters.
     6. Fixed bug in handling of XMM/EPIC rmfs

    Changes since 1.1.3 (released June 2003)
    ----------------------------------------
     1. Provided specialized FFT option to speed pileup fits
     2. Fixed bug in line_info() which caused intermittent
        problems on some architectures.
     3. [*] Changed thermal line profile sigma definition,
        adding a factor of 0.5 to the vturb^2 term.
     4. Added all_arfs() and all_rmfs() functions.
     5. rplot_counts()/rplot_flux() is now consistent with the
        current fit-statistic.  This required a change in the
        interface for user-defined fit-statistics.
     6. list_data and list_arf optionally show data filenames;
        filenames also available via get_data_info.  Related new
        intrinsic variable is 'Isis_List_Filenames'.
     7. Support listing physical units of fit-function parameters.
     8. array_fit() now supports verbose mode.

    Changes since 1.1.2 (released May 2003)
    ----------------------------------------
     1. Added workaround for a known pgplot bug which sometimes
        incorrectly plots the last histogram bin width.
     2. Added factor_rsp() to support factoring an RSP matrix
        into an ARF and a normalized RMF.
     3. Removed unused parameter 'npars' from the interface
        definition for user-defined fit-statistics.
        see add_slang_statistic().
     4. xspec local model input now handles models not written
        in Fortran.
     5. Fixed bug in plot_elev() - plot paging and character
        size were not properly updated.

    Changes since 1.1.1 (released May 2003)
    ----------------------------------------
     1. Added plot_linelist() function
     2. Updated handling of abundance tables; added new function
        get_abundances()

    Changes since 1.1.0 (released Apr 2003)
    ----------------------------------------
     1. get/set_arf_info now includes fracexpo
     2. improved plot format inheritance logic
     3. added add_help_file()
     4. added set_fake()
     5. Fixed bug in handling of dataset groups.
     6. Faster Poisson random generator

    Changes since 1.0.50 (released Mar 2003)
    ----------------------------------------
    o xspec module now loads via require("xspec")
    o script and module load paths now use slang-1.4.9 intrinsics
    o get_kernel() now returns kernel parameter string.
    o new list_kernels() function
    o new path-searching functionality.
        Related functions include
           get_isis_load_path()          get_isis_module_path()
           set_isis_load_path()          set_isis_module_path()
           prepend_to_isis_load_path()   prepend_to_isis_module_path()
           append_to_isis_load_path()    append_to_isis_module_path()
        The older functions
           add_to_isis_load_path()
           add_to_isis_module_path()
        are now deprecated.
    o Added _orplot_counts(), _orplot_flux()
    o Improved/simplified startup procedures for binary and cdrom
      distributions
    o Fixed bug in FITS RMF input code that, in very rare cases,
      could cause a core dump.
    o Updated cfitsio module

    Changes since 1.0.48
    --------------------
    o fixed bug which sometimes allowed fit-function to be
      evaluated at parameter values outside specified limits.
    o readcol now handles out-of-order columns correctly
    o update to remove conflict with cumsum function in slang-1.4.9

    Changes since 1.0.41
    --------------------
    o Added support for grouping datasets.
    o Fixed bug in exposure-scaling of instrument background
      when the ARF is included in the RMF.
    o Fixed bug in exposure-scaling of numbers read from plot by ifit_fun
    o Added support for fitting operator models (such as
      convolution models in xspec).  Updated xspec module to
      include convolution models.
    o Read TSTART keyword from spectrum file header.
    o By default, isis now installs into /usr/local/isis. After
      installing, the source-code directory can now be deleted.
    o Added shift, any, howmany
    o rebin function handles monotonic decreasing grids, etc.
    o histogram function ignores NaNs.
    o bugfix: unassign_rmf() wasn't looping over dataset lists
    o readcol now skips blank lines
    o Removed the Conf_Map_Fail_Hook and Conf_Map_Save_Hook
      intrinsic variables.  These hooks should now be provided
      as struct fields.  See conf_map_counts for details.
    o conf_map_counts/flux now supports mask function to speed
      computations by avoiding user-specified regions of parameter space
    o bugfix - flux_corr was zeroing model_flux

    Changes since 1.0.35
    --------------------
    o get_data_info/set_data_info can modify target name string
    o fixed bug in allocation of subplex workspace
    o errorbars() supports plotting every Nth errorbar.
    o set_frame_line_width/set_line_width functions improve control
      over plot line widths.
    o support plots with axes X (Y)-axes increasing leftward (downward)
    o workaround apparent pgplot bug to properly align low-resolution
      contour plots
    o [o]hplot now takes a Struct_Type
    o _A() enhanced to take a Struct_Type
    o New functions ignore_list, notice_list
    o Added flux_corr_model_counts
    o Port to Mac OS X; moved INSTALL to INSTALL.txt to avoid
      build problems on the case-insensitive Mac filesystem.
    o Added seed_random() function to seed the random number generator

Accessibility  |  Made with JED  |  Best Viewed with a Browser  |  Valid HTML 4.01  |  Valid CSS ]
This page is maintained by John C. Houck.   Last updated: Apr 3, 2022