view m-toolbox/html_help/help/ug/releasenotesV2_2_content.html @ 22:b11e88004fca database-connection-manager

Update collection.fromRepository
author Daniele Nicolodi <nicolodi@science.unitn.it>
date Mon, 05 Dec 2011 16:20:06 +0100
parents f0afece42f48
children
line wrap: on
line source


    <!-- BEGIN: Content file -->

    <a name="top_of_page"></a>
    <p>This table summarizes what's new in Version 2.2:</p>
    <table cellspacing="0" class="body" cellpadding="4" border="2" width="100%">
      <colgroup>
        <col width="25%">
        <col width="25%">
        <col width="25%">
        <col width="25%">
      </colgroup>
      <thead>
        <tr valign="top">
          <th bgcolor="#B2B2B2" valign="top"><p>New Features and Changes</p></th>
          <th bgcolor="#B2B2B2" valign="top"><p>Version Compatibility Considerations</p></th>
          <th bgcolor="#B2B2B2" valign="top"><p>Fixed Bugs and Known Problems</p></th>
          <th bgcolor="#B2B2B2" valign="top"><p>Related Documentation at Web Site</p></th>
        </tr>
      </thead>
      <tbody>
        <tr valign="top">
          <td bgcolor="#F2F2F2"><p>Yes<br>Details below</p></td>
          <td bgcolor="#F2F2F2"><p>Yes &#8212; Details labeled as <b>New repository manager</b> in descriptions of changes, below. See also <a href="#rm">Summary</a>.</p></td>
          <td bgcolor="#F2F2F2"><p><a href="https://ed.fbk.eu/ltpda/mantis/login_page.php" target="_top">Bug Reports</a> at Web site</p></td>
          <td bgcolor="#F2F2F2"><p>Printable Release Notes: <a href="http://www.lisa.aei-hannover.de/ltpda/downloads/version_2.2/files/Release_Notes_v2.2.pdf" target="_top">PDF</a></p></td>
        </tr>
      </tbody>
    </table>
    <p></p>
    <ul>
      <li><p><a href="#introduction">Introduction</a></p></li>
      <li><p><a href="#newFeatures">New toolbox features</a></p></li>
      <li><p><a href="#newFitting">New linear fitting tools in LTPDA</a></p></li>
      <li><p><a href="#rm">New repository manager</a></p></li>
    </ul>

    <!-- HEADLINE: Introduction -->

    <h3 class="title" id="introduction">Introduction</h3>
    <p>This version of LTPDA is 2.2. This document lists the changes since V2.1.</p>

    <!-- HEADLINE: New toolbox features -->

    <h3 class="title" id="newFeatures">New toolbox features</h3>
    <p>Version 2.2 of LTPDA has various new features.</p>
    <ul>
      <li><p>A reworking of the way connections to LTPDA repositories are handled. Now all connections are managed by the new "LTPDA Repository Manager" object which is created when <b>ltpda_startup</b> is executed. <i>All users should review their use of repository connection code in any scripts and make the appropriate changes to work with the repository manager</i> (<a href="#rm">see below</a>).</p></li>
      <li><p>A significant amount of work has been done on fitting tools (<a href="#newFitting">see below</a>).</p></li>
      <li><p>A new class called pest (parameter estimation) has been included which aims to capture details of the various fitting procedures in LTPDA. <i>Objects of this class are now output from all LTPDA fitting function, so some changes to existing analysis scripts and pipelines may be necessary</i>.</p></li>
    </ul>

    <!-- HEADLINE: New linear fitting tools in LTPDA -->

    <h3 class="title" id="newFitting">New linear fitting tools in LTPDA</h3>
    <p>The linear fitting tools are specialised <b>ao</b> methods, built around MATLAB's <b>lscov</b>. All of them return a <b>pest</b> (parameters estimate) object where the fields are containing:</p>
    <ol>
      <li><p>Fit parameters</p></li>
      <li><p>Uncertainties on the fit parameters (given as standard deviations)</p></li>
      <li><p>The reduced CHI2 of the fit</p></li>
      <li><p>The covariance matrix</p></li>
      <li><p>The degrees of freedom of the fit.</p></li>
    </ol>
    <p>The following methods are implemented:</p>
    <ul>
      <li><p><b>ao/linfit</b> solves an equation in the form <b>Y = P(1) + X * P(2)</b> for the fit parameters <b>P</b>.</p></li>
      <li><p><b>ao/bilinfit</b> solves an equation in the form <b>Y = X(1) * P(1) + X(2) * P(2) + ... + P(N+1)</b> for the fit parameters <b>P</b>.</p></li>
      <li><p><b>ao/polyfit</b> overloads <b>polyfit()</b> function of MATLAB for Analysis Objects. It finds the coefficients of a polynomial P(X) of degree N that fits the data Y best in a least-squares sense: <b>P(1)*X^N + P(2)*X^(N-1) +...+ P(N)*X + P(N+1)</b></p></li>
      <li><p><b>ao/polynomfit</b> solves an equation in the form <b>Y = P(1) * X^N(1) + P(2) * X^N(2) + ...</b> for the fit parameters <b>P</b>. It handles arbitrary powers of the input vector and uncertainties on the dependent vector Y and input vectors X.</p></li>
      <li><p><b>ao/lscov</b> is a wrapper for MATLAB's <b>lscov</b> function. It solves a set of linear equations by performing a linear least-squares fit. It solves the problem <b>Y = HX</b> where X are the parameters, Y the measurements, and H the linear equations relating the two.</p></li>
    </ul>

    <!-- HEADLINE: New repository manager -->

    <h3 class="title" id="rm">New repository manager</h3>
    <p>Until the main documentation is updated, the following a some quick tips to using
       the new repository manager.</p>
    <p>Only a single instance of the repository manager exists. It is created when you
       run <b>ltpda_startup</b>. To access the repository manager, you can do:</p>
    <div class="fragment"><pre>
>> rm = LTPDARepositoryManager
---- Repository Manager -----
connections: 0
connected: 0
------------------------------</pre></div>
    <p>The Repository Manager has both a scripting interface and a graphical user interface. To launch the GUI:</p>
    <div class="fragment"><pre>
>> rm.showGui</pre></div>
    <img src="images/RepositoryManager.png" alt="Repository Manager" border="3" width="588px" height="267px" vspace="10px">
    <p>Using the scripting interface, you can create new connections and search for existing connects:</p>
    <div class="fragment"><pre>
>> rm.newConnection('localhost', 'ltpda_test', 'hewitson')</pre></div>
    <p>specifying the hostname, the database and the username. You can also give the password
       in plain text to the newConnection command, but that's clearly not advisable.</p>
    <p>Making new connections like this allows you to set up your typical connections in
       your <b>startup.m</b> file (after executing <b>ltpda_startup</b>).</p>
    <p>A couple of words about time-outs. The repository manager uses two timers to maintain two
       aspects of each connection.</p>
    <p>The first timer handles whether or not the connection is actually connected to the server. This
       timer is not user configurable and is set to fire every few seconds so that connections are
       typically in the disconnected state (you can see this state in the 'age' column of the
       repository manager gui). Whenever the user tries to use a valid existing connection, the
       connection is opened and then locked until it is not needed anymore. This is transparent for
       the user and is handled automatically in methods like <b>submit</b>, <b>retrieve</b> and <b>update</b>.</p>
    <p>The second timer is user configurable via the LTPDA preferences. This timer defines when the
       password for each connection expires. This creates a level of safety so that connections from
       one user can not easily be abused by other uses. When this password fires, it checks how
       long each connection has been idle, and clears the password if it is older than the setting in
       the preferences. Connections with their password cleared are red on the repository manager
       gui. The next time the user attempts to use a connection whose password has been cleared,
       they will be prompted to re-enter the password.</p>

    <!-- END: Content file -->