Difference between revisions of "IXTdataset 1d"

From LIBISIS
Jump to navigation Jump to search
Line 91: Line 91:
  
 
<tt>function y = my_polynom(x, pin)
 
<tt>function y = my_polynom(x, pin)
 +
 
y = pin(1).*x.^6 + pin(2).*x.*sin(x) + pin(3).*x</tt>
 
y = pin(1).*x.^6 + pin(2).*x.*sin(x) + pin(3).*x</tt>
  

Revision as of 14:01, 31 March 2008

An IXTdataset_1d is an object that stores signal and error data against one independent dimension (the x axis). Title and label information is also stored. These are used for manipulating and visualising a single spectrum.


One dimensional plotting can be used to visualise the data and many functions exist to manipulate it given in the user manual


Fields

IXTdataset_1d objects contain the following fields


Field Type Description
base IXTbase Object required for internal use
title char Title of the dataset used in plotting
signal real (ptr) Signal data
error real (ptr) Standard error
s_axis IXTaxis object containing the signal axis label and units code information
x real (ptr) First independent variable data (i.e. x data). If point data this will be the point positions in the x axis. If histogram data, this will be the bin boundaries in the x axis
x_axis IXTaxis object containing the x axis label and units code information
x_distribution logical True if signal is a distribution on x (e.g. counts/microsecond) False if signal is not a distribution on x (e.g. counts)

Constructing an IXTdataset_1d Object

The constructor for an IXTdataset_1d can be used to create a full IXTdataset_1d object using the following syntax

>> w = IXTdataset_1d(base, 'title', [signal], [error], s_axis, [x], x_axis, [x_distribution])
  • Length(signal), Length(error), Length(x) must all be equal
  • signal, error and x must be one dimensional arrays
  • s_axis and x_axis must be properly constructed IXTaxis objects
  • x_distribution must be a logical value (1 or 0, TRUE or FALSE)
  • base must be a properly constructed IXTbase object

Datasets without title and label information may be constructed using the syntax

w = IXTdataset_1d(x, signal, error)
  • signal and error may be omitted. If so, w.signal and/or w.error will contain an array of 0's matching the dimensions of the x data
  • Title, s_axis and x_axis will contain blank objects
  • x_distribution will be FALSE


datasets can also be made using commands found in input and output functions


Changing Values in an IXTdataset_1d object

The fields in the object are accessible on the matlab command line. Therefore the values of the fields can be changed easily, for instance

>> w.title = 'mytitle'

will set the title in w to 'mytitle'


Examples

Two Identical Scripts to Construct an IXTdataset_1d From a Function


Here, assume that a function my_func is some unusual function of the form

function y = my_polynom(x, pin)

y = pin(1).*x.^6 + pin(2).*x.*sin(x) + pin(3).*x


The function


x = 1:300

y = my_func(x, [2, 3, 2]) % generate y values

title = 'my unusual function'

xaxis = IXTaxis('Independent Variable')

yaxis = IXTaxis('Dependent Variable')

e = zeros(size(x)) % need error values for full construction

w = IXTdataset_1d(IXTbase, title, y, e, yaxis, x, xaxis, false)

dl(w) % plot the data


gives the same results as


x = 1:300

w = IXTdataset_1d(x) % create dataset with blank y and e values

w.title = 'my unusual function'

w.x_axis = IXTaxis('Independent Variable')

w.y_axis = IXTaxis('Dependent Variable')

w = func_eval(w, [2 3 2])

dl(w)