SpaceTime Manual

Embed Size (px)

Citation preview

  • 8/6/2019 SpaceTime Manual

    1/54

  • 8/6/2019 SpaceTime Manual

    2/54

    Getting Started

    Entering Expressions Graphing Equations Time Graphing

    Calculations

    Functions Lists Matrices Strings

    Plot Functions

    Plot Plot3D ListPlot BodePlot ImagePlot

    Programming

    Scripts Script Functions Numerical Scripts Commands Compiler Include Include Folder

    Interface

    Button Pad Function Catalog Keyboard Shortcuts Main Menu Options Quick Menu Options Overview

    Screenshots Capturing Screenshots Animation Lab

  • 8/6/2019 SpaceTime Manual

    3/54

    Entering Expressions

    From SpaceTimeWiki

    An expression is a group numbers, operators, variables, and functions or a combination of these elements.

    Expressions are evaluated by pressing Enter on your keyboard or by pressing the Solve Button on the

    button pad.

    Simple Expressions

    Algebraic Expressions

    Derivatives

    Integrals

  • 8/6/2019 SpaceTime Manual

    4/54

    You can also enter multiple lines in an entry by pressing Shift + Enter to create a new line.

    See also

    Button pad Keyboard Shortcuts

  • 8/6/2019 SpaceTime Manual

    5/54

    Graphing Equations

    From SpaceTimeWiki

    You can plot equations using many different methods in SpaceTime.

    The simplest method is by pressing Ctrl + Enter on your keyboard or by pressing the PlotButton on thebutton pad.

    You can also plot expressions using Plot orPlot3D.

  • 8/6/2019 SpaceTime Manual

    6/54

    See also

    Plot, 2D Graphing, ListPlot, ImagePlot, BodePlot

    Plot3D, 3D Graphing

    Time Graphing

  • 8/6/2019 SpaceTime Manual

    7/54

    Time Graphing

    From SpaceTimeWiki

    The variable T is used to create time graphs for2D and 3D graphing. The value ofT is incremented every

    frame by T-step in the Time Window. This creates an animated graph.

    This example graphs two 2D polar time plots.

    This example graphs two 3D parametric time plots.

    See also

    Plot, 2D Graphing, ListPlot, ImagePlot, BodePlot

    Plot3D, 3D Graphing

  • 8/6/2019 SpaceTime Manual

    8/54

    Lists

    From SpaceTimeWiki

    Lists are created using square or curly brackets and each element in the list is separated by a comma.

    Set a variable equal to a list by using the equals sign.

    Set a list of variables equal to a list of values. Both lists must be the same length

    Access the values of a list using parenthesis. The starting index of a list is one.

  • 8/6/2019 SpaceTime Manual

    9/54

    Access multiple values of a list by inputting of list for the indexes. This example returns the first, third,

    and fifth element in the list.

    Access multiple values of a list by using colon notation. This example returns a list starting at the second

    element and ending at the fourth element in the list.

    Set a value in a list equal to another value by using the equals sign.

    See also

    Max(List) , Min(List) , Mean(List) , Variance(List) , StandardDeviation(List)

  • 8/6/2019 SpaceTime Manual

    10/54

    Matrices

    From SpaceTimeWiki

    Matrices are created using square or curly brackets and each element in the matrix is separated by a

    comma. This example creates a 2x2 matrix.

    Set a variable equal to a matrix by using the equals sign.

    Access the values of a matrix using parenthesis. The starting index of matrix values is one. This example

    returns the second value from the first row.

    Set a value in a matrix equal to another value by using the equals sign.

  • 8/6/2019 SpaceTime Manual

    11/54

    See also

    Matrix functions

  • 8/6/2019 SpaceTime Manual

    12/54

    Strings

    From SpaceTimeWiki

    SpaceTime can also output strings.

    Strings can be concatenated with other strings, values, ... by using the Append(a,b) command Currently, you cannot do any other operation on strings

    Examples

  • 8/6/2019 SpaceTime Manual

    13/54

    Plot

    From SpaceTimeWiki

    The Plot function plots 2D functions, parametric, polar, implicit, and contour graphs. This function also

    lets you specify your graphing variable, graphing window, and type of 2D graph.

    You can also plot graphs by clicking the Plot Button or by pressing Ctrl + Enter. Learn moreabout 2D Graphing.

    Plot(equation)

    This is the simplest way to use plot. These examples plot a single equation and the type of graph is auto

    detected by using the default 2D graphing variables.

  • 8/6/2019 SpaceTime Manual

    14/54

    Plot(equation, window, [type])

    These examples let you specify your graphing variable, graphing window, and type of 2D graph.

    Equation

    Description: The parameter is the equation to graph.

    Example: sin(x)

    Window

    Description: This parameter is a list containing the graphing variable name and window values.

    Example: [x, -5, 5]

    Type

    Description: This parameter specifies the type of plot to graph. This will graph 2D functions by default if

    no parameter is specified.

    Example: function, parametric, polar, implicit, or contour

  • 8/6/2019 SpaceTime Manual

    15/54

    Plot(equation1, equation2, ...)

    These examples plot a list of equations. The type of graph is auto detected by using the default 2D

    graphing variables. You can also input a list of equations using one parameter like this, Plot([equation1,equation2, ...]).

  • 8/6/2019 SpaceTime Manual

    16/54

    Plot(index1, index2, ...)

    These examples plot a list of plots. This allows you to graph multiple types of 2D plots in the same graph.

    The index parameters represent the index numberof each entry in the notebook. These numbers can be

    found on the index button on each entry. You can also use a list of numbers, Plot([2,4,12]), instead of

    multiple parameters to plot a list of plots.

    See also

    2D Graphing, ListPlot, ImagePlot, BodePlot

    Plot3D, 3D Graphing

    Time Graphing

  • 8/6/2019 SpaceTime Manual

    17/54

    Plot3D

    From SpaceTimeWiki

    The Plot3D function plots 3D functions, parametric, spherical, and cylindrical graphs. This function also

    lets you specify your graphing variable, graphing window, and type of 3D graph.

    You can also plot graphs by clicking the Plot Button or by pressing Ctrl + Enter. Learn more about

    3D Graphing.

    Plot3D(equation)

    This is the simplest way to use plot. These examples plot a single equation and the type of graph is auto

    detected by using the default 3D graphing variables.

    This example graphs a 3D parametric plot followed by a 3d function plot.

  • 8/6/2019 SpaceTime Manual

    18/54

    This example uses multiple line input to graph a more complicated 3D parametric plot.

  • 8/6/2019 SpaceTime Manual

    19/54

    Plot3D(equation, window1, window2, [type])

    These examples let you specify your graphing variable, graphing window, and type of 3D graph.

    Equation

    Description: The parameter is the equation to graph.

    Example: sin(x)

    Window1

    Description: This parameter is a list containing the graphing variable name and window values. The last

    parameter points is optional.

    Example: [x, min, max, (points)]

    Window2

    Description: This parameter is a list containing the graphing variable name and window values. The last

    parameter points is optional.

    Example: [y, min, max, (points)]

    Type

    Description: This parameter specifies the type of plot to graph. This will graph 3D functions by default if

    no parameter is specified.Example: function, parametric, spherical, or cylidrical

  • 8/6/2019 SpaceTime Manual

    20/54

    Plot3D(equation1, equation2, ...)

    These examples plot a list of equations. The type of graph is auto detected by using the default 3D

    graphing variables. You can also input a list of equations using one parameter like this, Plot([equation1,

    equation2, ...]).

    Image:Plot79.png

    Plot3D(index1, index2, ...)These examples plot a list of plots. This allows you to graph multiple types of 3D plots in the same graph.

    The index parameters represent the index numberof each entry in the notebook. These numbers can be

    found on the index button on each entry. You can also use a list of numbers, Plot([2,4,12]), instead of

    multiple parameters to plot a list of plots.

    See also

    Plot, 2D Graphing, ListPlot, ImagePlot, BodePlot

    3D Graphing

    Time Graphing

  • 8/6/2019 SpaceTime Manual

    21/54

    ListPlot

    From SpaceTimeWiki

    The ListPlot function plots 2D scatter plots, histograms, box plots, and normal probability plots.

    ListPlot(list)

    ListPlot(list, type)

    type can be eitherscatter orhistogram

  • 8/6/2019 SpaceTime Manual

    22/54

    ListPlot(list1, list2, ...)

    list1 = x-values first group list2 = y-values first group list3 = x-values second group list4 = y-values second group ....

    (the number oflists should always be a pair number)

    See also

    Plot, 2D Graphing, ImagePlot, BodePlot

    Plot3D, 3D Graphing

    Time Graphing

  • 8/6/2019 SpaceTime Manual

    23/54

    BodePlot(function,var)

    From SpaceTimeWiki

    BodePlot(function,variable,minimum,maximum,mode) creates a Bode plot for the given function.

    function : is the function to plot variable : is the independant variable minimum : start sweep frequency : min (rad/sec) maximum : end sweep frequency : max (rad/sec) mode = 0 : magnitude plot (= default mode) mode = 1 : phase plot in degrees mode = 2 : phase plot in radians

    The x-axis is a logarithmic scale and represents the frequency in rad/sec

    x = -2 : => = 0.01 rad/sec x = -1 : => = 0.1 rad/sec x = 0 : => = 1 rad/sec x = 1 : => = 10 rad/sec x = 2 : => = 100 rad/sec x = 3 : => = 1000 rad/sec ...

    When the frequency is not given, then min = 0.01 rad/sec and max = 1000 rad/sec.

    The y-axis is either the magnitude in dB (mode=0) or the phase in degrees (mode=1) or the phase in

    radians (mode=2)

    See also

    Plot, 2D Graphing, ListPlot, ImagePlot

    Plot3D, 3D Graphing

    Time Graphing

    Examples

  • 8/6/2019 SpaceTime Manual

    24/54

  • 8/6/2019 SpaceTime Manual

    25/54

  • 8/6/2019 SpaceTime Manual

    26/54

  • 8/6/2019 SpaceTime Manual

    27/54

    ImagePlot

    From SpaceTimeWiki

    The ImagePlot function plots an image from a matrix of real values.

    ImagePlot(matrix)

    This plots a grayscale image. The values in matrix are assumed to be from 0.0 to 1.0 wherezero is blackand one is white.

    ImagePlot(r, g, b)

    This plots a color image. The values in r, g, and b are assumed to be from 0.0 to 1.0 wherezero is black

    and one is red, green, or blue.

  • 8/6/2019 SpaceTime Manual

    28/54

  • 8/6/2019 SpaceTime Manual

    29/54

    Scripts

    From SpaceTimeWiki

    Scripts are a series ofCommands, Expressions, Functions, and Script Functions which all together create

    a new function.

    Creating Scripts

    Scripts are created by pressing the index button located next to each entry. The index button is the blue

    square numbered button.

    Scripts have a Name and a list ofParameters that are used to identify them. Once written, thescript is called as Name(parameter(s))

    A parameter has the name and the function of a variable. Parameters are used to pass user input tothe script.

    You can specify multiple parameters by separating each variable name by a comma in theParameters field.

    Optional parameters should be given as parameter_name=value. When the caller does notsupply parameter, then value is taken per default.

    All variables (including the parameters) used within a script are local variables. They are ONLYavailable within the script.

    You can use conditional statements orspecial commands within a script. Scripts can return single values, lists, matrices, strings or they can createplots. Scripts are called just like built-in functions in SpaceTime by typing the script name followed by

    each parameter separated by a comma between parenthesis.

    You can call a script as a single statement or you can assign the result of a script to a globalvariable.

  • 8/6/2019 SpaceTime Manual

    30/54

  • 8/6/2019 SpaceTime Manual

    31/54

    Another simple script to calculate the area of a rectangular.

    Name : Area Parameters : width, depth Script Definition : width * depth Script Return : area Script Calling : Area(value width, value depth)

  • 8/6/2019 SpaceTime Manual

    32/54

    This script creates a matrix for use with ImagePlot. Scripts can also return images and graphs when the

    output is a plot function.

    Name : Static Parameter : size Script Definition : from line 1 to 7 Script Return : ImagePlot Script Calling : Static(value)

    See also

    Creating Scripts, Script Functions, Commands, Compiler, Include, Include Folder

  • 8/6/2019 SpaceTime Manual

    33/54

    Script Functions

    From SpaceTimeWiki

    If(condition)

    Ifcondition evaluates to zero then the block of code is skipped. Ifcondition evaluates to a non-zero value

    then the block of code is evaluated.

    Following comparison signs can be used :

    equal to : == not equal to : != greather than : > greather than or equal to : >= less than :

  • 8/6/2019 SpaceTime Manual

    34/54

    Loop(iterations)

    This function will loop through and evaluate a block of code the specified number ofiterations.

    Note : in above script x++ means x=x+1.

    Following functions are available within scripts :

    x++ (x=x+1), x-- (x=x-1), x+=n (x=x+n), x-=n (x=x-n), x*=n (x=x*n), x/=n (x=x/n)

    Loop(variable, start, end, [step=1])

    This function will loop through a block of code using a loop variable. The variable is initialized with the

    start value. The loop variable is incremented bystep after each iteration and the loop ends once the loop

    variable is greater then end.

  • 8/6/2019 SpaceTime Manual

    35/54

    While(condition)

    This function will loop through and evaluate a block of code untilcondition evaluates to zero.

    Break

    This statement will terminate a loop.

    Error

    This statement stops all further calculations and forces an error message to the user

  • 8/6/2019 SpaceTime Manual

    36/54

    Trace(variable)

    This function is used for debugging. This function will output every instance when the specified variable's

    value was changed.

    Include(file)

    This function include SpaceTime files or SpaceTime code files into your notebook. This allows you to

    call all the scripts that are in the included file.

    See also : Include Folder

    See also

    Append(a,b), Part(expression, index), Strings, Function(function,Parameters), Call(function,Parameters)

    for other usefull script commands.

  • 8/6/2019 SpaceTime Manual

    37/54

    Numerical Scripts

    From SpaceTimeWiki

    SpaceTime uses a computer algebra system called MobileCAS for calculations. SpaceTime can store

    results symbolically as well as in decimal format. This is different from other programs such as

    MATLAB that store all numerical results as a decimal number.

    You can reduce these answers to numbers in your scripts in two different ways.

    This example uses the numerical command to force all results to reduce to a number. This is thebest method to use in your scripts if you want the entire script to run in a numerical mode.

    This example uses the number function to reduce a single result to a number.

  • 8/6/2019 SpaceTime Manual

    38/54

  • 8/6/2019 SpaceTime Manual

    39/54

    Computer Algebra

    numerical

    Switches to numerical mode.

    symbolic

    Switches to symbolic mode.

    CompilerFrom SpaceTimeWiki

    The compiler can compile scripts into Code files that you can include into SpaceTime using the Include

    function or by placing the file in yourInclude Folder.

    Include

    From SpaceTimeWiki

    You can include SpaceTime files and code files into your notebook by using the Include function. Here is

    an example.

    This notebook is saved as Cube.st.

    Include the file into the new notebook and call the script Cube.

    See also : Include Folder

  • 8/6/2019 SpaceTime Manual

    40/54

  • 8/6/2019 SpaceTime Manual

    41/54

  • 8/6/2019 SpaceTime Manual

    42/54

    Keyboard Shortcuts

    From SpaceTimeWiki

    Enter

    Enter

    Evaluates an entry

    Shift + Enter

    Creates a new line in the input of the entryCtrl + Enter

    This graphs an entry in the notebookCtrl + Shift + Enter

    Evaluates all the entries in the notebookSymbols

    Special symbols are accessed by holding Crtl + Shift down and then pressing one of following

    characters.

  • 8/6/2019 SpaceTime Manual

    43/54

  • 8/6/2019 SpaceTime Manual

    44/54

    Main Menu

    From SpaceTimeWiki

    File

    New

    Creates a new file.

    Open

    Opens a file.

    Save

    Saves a file.

    Save As...

    Saves a file as a new name.

    Compile...

    Saves all the scripts into a compiled file.

    Edit

    Undo

    Redo

    Insert Entry

    Inserts a new entry into the notebook.

    Delete Entry

    Deletes the selected entry from the notebook.

    Cut Entry

    Cuts the entry from the notebook.

    Copy Entry

    Copies the selected entry from the notebook.

    Paste Entry

    Pastes the copied entry into the notebook.

    Order Entries

    Orders the indexes of the entries starting from 1.

    Insert File Name...

    Opens a dialog to insert a file name

  • 8/6/2019 SpaceTime Manual

    45/54

    View

    Options

    Opens the Options dialog.

    Animation Lab

    Opens the Animation Lab.

    Include Folder

    Opens the Include Folder.

    Screenshots Folder

    Opens the Screenshots Folder.

    Help

    Tutorials

    Shows the tutorials

  • 8/6/2019 SpaceTime Manual

    46/54

    Options

    From SpaceTimeWiki

    Calculation Mode

    Exact : press "enter" on an equation line Decimal : press "enter" again on the same equation line

    Number mode

    Fractions Decimals

  • 8/6/2019 SpaceTime Manual

    47/54

    Numbers

    Normal Scientific Engineering

    Angles

    Radians Degrees

    Complex Numbers

    Rectangular Polar

    note : Polar mode ALWAYS returns the result with argument in radians !

  • 8/6/2019 SpaceTime Manual

    48/54

    Precision

    0 .. 16

    Fraction Limit

    1/1000 1E-6 1E-8 1E-10

    Others

    Always graph in radians Auto Crop Auto Evaluate

  • 8/6/2019 SpaceTime Manual

    49/54

    Quick Menu Options

    From SpaceTimeWiki

    Auto Evaluate

    When Auto Evaluate is set ON (green) then all equation lines are re-evaluated at startup. When Auto Evaluate is switched OFF (blank) then no recalculation is done at startup. At any time you can recalculate the whole file by pressing the keyboard shortcut Ctrl + Shift +

    Enter.

    Debug Mode

    Pressing "ESC" during the execution of a script cancels all further operations of that script. This can be

    very usefull if the script is running in an endless loop.

    (In versions prior to V3.0.0.3 this could be set On/OFF. Since version V3.0.0.3 this is always set to ON

    and does not slowdown SpaceTime anymore.)

    Auto Crop

    When Auto Crop is switched ON, then screenshots are limited to equation and plot lines. When Auto Crop is switched OFF, then a full screenshot (including right panel) is taken.

    Options

    This button is a fast access to the Options menu.

  • 8/6/2019 SpaceTime Manual

    50/54

    Functions

    From SpaceTimeWiki

    Elementary Functions

    Basic functions : Plus(+), Minus(-), Multiply (*),Divide(/) Mod(m,n) sqrt(z) Power (^) nRoot(z,n) Factorial(n) or n! nCr(n,r) nPr(n,r) Binomial(n,r) Multinomial(nList) Pochhammer(n,k) Floor(z) Ceil(z) Sign(z) fPart(x) Round(number, digits)

    Complex Functions

    Re(z) Im(z) Abs(z) Arg(z) Conj(z)

    Logarithmic & Exponential Functions

    ln(z) log(z) log(n,z) exp(z) or e^(z)

    Trigonometric Functions

    TrigExpand(function) TrigReduce(function) TrigCollect(function) TrigConvert(function) ExpConvert(function) TrigSolve(f(z),z)new in revision V3.0.3

    Circular Functions

    Sin(z), Cos(z), Tan(z)

  • 8/6/2019 SpaceTime Manual

    51/54

    Asin(z),Acos(z), Atan(z) Csc(z), Sec(z), Cot(z) Acsc(z), Asec(z), Acot(z)

    Hyperbolic Functions

    Sinh(z), Cosh(z), Tanh(z) Asinh(z),Acosh(z), Atanh(z) Csch(z), Sech(z), Coth(z) Acsch(z), Asech(z), Acoth(z)

    Number Functions

    Random(min, max) Bernoulli(n) Euler(n) Catalan(n) Fibonacci(n) Lucas(n) nFactors(n) nPrimes(n) Prime(n,p) IsPrime(n)

    Algebra Functions

    Expand(function) Together(function) Apart(function) Factor(function) SimplifyPoly(function) Solve(f(z),z)changed in revision V3.0.3 pSolve(f(z),z) nSolve(f(z),z,guess) Eval(f(z),z,val) PolyDivide(f(z),g(z)) Quotient(f(z),g(z)) Remainder(f(z),g(z)) PolyFit(pList,var)

    Special Polynomials

    Bernoulli(n,z) Euler(n,z) Fibonacci(n,z) Lucas(n,z) ChebyshevT(n,z)

  • 8/6/2019 SpaceTime Manual

    52/54

    ChebyshevU(n,z) LegendreP(n,z) LegendreQ(n,z) LaguerreL(n,z) HermiteH(n,z) GegenbauerC(n,a,z)

    Calculus Functions

    Sum(f(n),n,n1,n2) Product(f(n),n,n1,n2) Limit(f(x),x,x0,-1/0/+1) D(f(x),x) D(f(x),x,n) Diff(f(x),x) fDiff(f(x,y,z,..),(x,y,z,...)) iDiff(f(x,y,z,..),(d_vars),i_var) pDiff(f(x,y,z,..),(f_vars),(f_equ),i_var) Int(f(x),x) Int(f(x),x,a,b) NIntegrate(f(x),x,a,b) Series(f(z),z,n) FourierSin(f(x),x,w) FourierCos(f(x),x,w) FourierSeries(f(x),x,n)

    Vector Calculus Functions

    dot(A,B) cross(A,B) Norm(A) Gradient(function,varlist) Divergence(vector,varlist) Curl(vector,varlist) Laplacian(function,varlist) Jacobian(function,varlist,point)

    Hessian(function,varlist) Duf(function,varlist,point,direction) SurfaceNormal(function,varlist,point)

    Graphing Functions

    Plot Plot3D ListPlot BodePlot(function,var) ImagePlot

  • 8/6/2019 SpaceTime Manual

    53/54

    clip(x,min,max) SquareWave(x,T) TriangleWave(x,T) SawToothWave(x,T) StaircaseWave(x,T) FullRectSineWave(x,T) HalfRectSineWave(x,T)

    Special Functions

    Gamma(z) Gamma(a,z) = Incomplete Gamma DiGamma(z) or Psi(z) Beta(m,n) Zeta(z) = Riemann Zeta Zeta(z,a) = Hurwitz Zeta Harmonic(z) Si(z), Ci(z)

    Ei(z), Li(z) Shi(z), Chi(z) FrenselSin(z) FresnelCos(z) Erf(z) Erfc(z) BesselJ(v,z) BesselY(v,z) BesselI(v,z) BesselK(v,z) KelvinBer(v,z) KelvinBei(v,z) KelvinKer(v,z) KelvinKei(v,z) HankelH1(v,z) HankelH2(v,z) AiryAi(z) AiryBi(z) Gudermannian(z) invGudermannian(z)

    Matrices

    Identity(n) Inverse(A) Transpose(A) Det(A) RowReduce(A) Eigenvalues(A) QR(A)

  • 8/6/2019 SpaceTime Manual

    54/54

    SVD(A) Cholesky(A)

    Statistical Functions

    Min(List) Max(List) Mean(List) Variance(List) StandardDeviation(List) BinomialPDF, BonomialCDF ChiSquarePDF, ChiSquareCDF GeoPDF, GeoCDF NormalPDF, NormalCDF StudentPDF, StudentCDF PoissonPDF PoissonCDF InverseNormal

    Data Functions

    Constant Table

    Other Functions

    Clear(variable) Append(a,b) Part(expression, index) Size(list) Choose(test1, value1, test2, value2, ...) Variables(expression) Call(function,Parameters) Function(function,Parameters)