# Contents of /branches/stage3.1/doc/user/changes.tex

Revision 2908 - (show annotations)
Wed Feb 3 01:43:46 2010 UTC (9 years ago) by jfenwick
File MIME type: application/x-tex
File size: 5025 byte(s)
Added AusPDC reference.
Mentioned rename of launcher.


 1 2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 3 % 4 % Copyright (c) 2009 by University of Queensland 5 % Earth Systems Science Computational Center (ESSCC) 6 7 % 8 % Primary Business: Queensland, Australia 9 % Licensed under the Open Software License version 3.0 10 11 % 12 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 13 14 \section{Changes from previous releases} 15 \label{app:changes} 16 17 \subsection*{3.0 to 3.1} 18 \begin{itemize} 19 \item{The \emph{escript} launcher has been renamed to \emph{run-escript} the old-name will still work in this version 20 but will be removed in future.} 21 \item Lazy evaluation features have been improved and documented (See Section~\ref{sec:lazy}). 22 \item Escript documentation includes a new Cookbook which demonstrates how to solve sample problems using escript. 23 \item Macro elements have been introduced. 24 \item The saveDataCSV method allows one or more Data objects to be exported in CSV format. 25 \item Data objects can be populated by interpolating from a values in a table. 26 \item The new getInfLocator and getSupLocator functions in esys.escript.pdetools return Locators to a minimal/maximal point over the data. 27 \item There is a new class to model fault systems (esys.escript.faultsystems.FaultSystem). 28 \item A beta version of an Algebraic Multigrid (AMG) solver is included. 29 \item Inverting square matricies larger than 3x3 is now permitted if escript is compiled with Lapack support. 30 \item If escript is compiled with a modern compiler, then inf/sup/Lsup will now report NaN, +/-inf as appropriate if those values appear in the data. 31 \item Data.setTags will take tag names as well as tag numbers. 32 \item The Scalar, Vector, Tensor, Tensor3, Tensor4 factory methods can now take array/nested sequence like objects as their initial values. 33 \item escript.util.mkDir can now take a list of directories to create. 34 \item Behind the scenes, python docstrings have been rewritten from epydoc to restructured text. 35 \item Various other bug fixes and performance tweaks. 36 \end{itemize} 37 38 39 \subsection*{2.0 to 3.0} 40 \begin{itemize} 41 \item The major change here was replacing \module{numarray} with \numpy. 42 For general instructions on converting scripts to use numpy see \url{http://www.stsci.edu/resources/software_hardware/numarray/numarray2numpy.pdf}. 43 The specific changes to \escript are: 44 \begin{itemize} 45 \item getValueOfDataPoint() which returned a \module{numarray}.array has been replaced by 46 getTupleForDataPoint() which returns a \PYTHON tuple containing 47 the components of the data point. In the case of matricies or higher ranked data, the tuples will be nested. Use 48 \numpy.array(data.getTupleForDataPoint()) if a \numpyNDA object is required. 49 \item getValueOfGlobalDataPoint has similarly been replaced by getTupleForGlobalDataPoint(). 50 \item integrate(data) now returns a \numpyNDA instead of a \module{numarray}.array. 51 \end{itemize} 52 Any python methods which previously accepted \module{numarray} objects will accept \numpy objects instead. 53 54 \item 55 The way solver options are defined for \LinearPDE objects has been changed. There is now a \SolverOptions object attached to the \LinearPDE object which is handeling the options of solvers used to solve the PDE. The following changes apply: 56 \begin{itemize} 57 \item The \method{setTolerance} and \method{setAbsoluteTolerance} methods have been removed. Use now \method{getSolverOptions().setTolerance} 58 and \method{getSolverOptions().setAbsoluteTolerance} 59 60 \item The \method{setSolverPackage} and \method{setSolverMethod} methods have been removed. Use now \method{getSolverOptions().setPackage}, 61 \method{getSolverOptions().setSolverMethod} and 62 \method{getSolverOptions().setPreconditioner}. 63 64 \item The \method{setSolverPackage} and \method{setSolverMethod} methods have been removed. Use now \method{getSolverOptions().setPackage}, 65 \method{getSolverOptions().setSolverMethod} and 66 \method{getSolverOptions().setPreconditioner}. 67 68 \item The static class variables defining packages, solvers and preconditioners have been removed and are now accessed via the corresponding static class variables in \SolverOptions. For instance use \method{SolverOptions.PCG} instead of 69 \method{LinearPDE.PCG} to select the preconditioned conjugate gradient method. 70 71 \item The \method{getSolution} takes now no argument. Use the corresponding 72 methods of the \SolverOptions object returned by \method{getSolverOptions()} 73 to set values, e.g. use 74 \method{getSolverOptions().setVerbosityOn()} instead of argument \code{verbose=True} 75 and \method{getSolverOptions().setIterMax(1000)} instead of argument \code{iter_max=1000} 76 \end{itemize} 77 78 \item 79 The \pyvisi module from previous releases has been deprecated and will no longer be supported. 80 It is still present in the source code and can still be used if you compile \escript from source. 81 It will not be available in binary releases. 82 Its use is discouraged. 83 The documentation for \pyvisi can be found in Appendix~\ref{PYVISI CHAP}. 84 85 \end{itemize}