0% found this document useful (0 votes)
2K views

Download ebooks file MATLAB R2020a Symbolic Math Toolbox User s Guide Mathworks all chapters

Mathworks

Uploaded by

kozakbriar18
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2K views

Download ebooks file MATLAB R2020a Symbolic Math Toolbox User s Guide Mathworks all chapters

Mathworks

Uploaded by

kozakbriar18
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 55

Experience Seamless Full Ebook Downloads for Every Genre at textbookfull.

com

MATLAB R2020a Symbolic Math Toolbox User s Guide


Mathworks

https://textbookfull.com/product/matlab-r2020a-symbolic-
math-toolbox-user-s-guide-mathworks/

OR CLICK BUTTON

DOWNLOAD NOW

Explore and download more ebook at https://textbookfull.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

MATLAB Econometrics Toolbox User s Guide The Mathworks

https://textbookfull.com/product/matlab-econometrics-toolbox-user-s-
guide-the-mathworks/

textboxfull.com

MATLAB Bioinformatics Toolbox User s Guide The Mathworks

https://textbookfull.com/product/matlab-bioinformatics-toolbox-user-s-
guide-the-mathworks/

textboxfull.com

MATLAB Mapping Toolbox User s Guide The Mathworks

https://textbookfull.com/product/matlab-mapping-toolbox-user-s-guide-
the-mathworks/

textboxfull.com

MATLAB Optimization Toolbox User s Guide The Mathworks

https://textbookfull.com/product/matlab-optimization-toolbox-user-s-
guide-the-mathworks/

textboxfull.com
MATLAB Trading Toolbox User s Guide The Mathworks

https://textbookfull.com/product/matlab-trading-toolbox-user-s-guide-
the-mathworks/

textboxfull.com

MATLAB Computer Vision Toolbox User s Guide The Mathworks

https://textbookfull.com/product/matlab-computer-vision-toolbox-user-
s-guide-the-mathworks/

textboxfull.com

MATLAB Curve Fitting Toolbox User s Guide The Mathworks

https://textbookfull.com/product/matlab-curve-fitting-toolbox-user-s-
guide-the-mathworks/

textboxfull.com

MATLAB Fuzzy Logic Toolbox User s Guide The Mathworks

https://textbookfull.com/product/matlab-fuzzy-logic-toolbox-user-s-
guide-the-mathworks/

textboxfull.com

MATLAB Global Optimization Toolbox User s Guide The


Mathworks

https://textbookfull.com/product/matlab-global-optimization-toolbox-
user-s-guide-the-mathworks/

textboxfull.com
Symbolic Math Toolbox™
User's Guide

R2020a
How to Contact MathWorks

Latest news: www.mathworks.com

Sales and services: www.mathworks.com/sales_and_services

User community: www.mathworks.com/matlabcentral

Technical support: www.mathworks.com/support/contact_us

Phone: 508-647-7000

The MathWorks, Inc.


1 Apple Hill Drive
Natick, MA 01760-2098
Symbolic Math Toolbox™ User's Guide
© COPYRIGHT 1993–2020 by The MathWorks, Inc.
The software described in this document is furnished under a license agreement. The software may be used or copied
only under the terms of the license agreement. No part of this manual may be photocopied or reproduced in any form
without prior written consent from The MathWorks, Inc.
FEDERAL ACQUISITION: This provision applies to all acquisitions of the Program and Documentation by, for, or through
the federal government of the United States. By accepting delivery of the Program or Documentation, the government
hereby agrees that this software or documentation qualifies as commercial computer software or commercial computer
software documentation as such terms are used or defined in FAR 12.212, DFARS Part 227.72, and DFARS 252.227-7014.
Accordingly, the terms and conditions of this Agreement and only those rights specified in this Agreement, shall pertain
to and govern the use, modification, reproduction, release, performance, display, and disclosure of the Program and
Documentation by the federal government (or other entity acquiring for or through the federal government) and shall
supersede any conflicting contractual terms or conditions. If this License fails to meet the government's needs or is
inconsistent in any respect with federal procurement law, the government agrees to return the Program and
Documentation, unused, to The MathWorks, Inc.
Trademarks
MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See
www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names may be
trademarks or registered trademarks of their respective holders.
Patents
MathWorks products are protected by one or more U.S. patents. Please see www.mathworks.com/patents for
more information.
Revision History
August 1993 First printing
October 1994 Second printing
May 1997 Third printing Revised for Version 2
May 2000 Fourth printing Minor changes
June 2001 Fifth printing Minor changes
July 2002 Online only Revised for Version 2.1.3 (Release 13)
October 2002 Online only Revised for Version 3.0.1
December 2002 Sixth printing
June 2004 Seventh printing Revised for Version 3.1 (Release 14)
October 2004 Online only Revised for Version 3.1.1 (Release 14SP1)
March 2005 Online only Revised for Version 3.1.2 (Release 14SP2)
September 2005 Online only Revised for Version 3.1.3 (Release 14SP3)
March 2006 Online only Revised for Version 3.1.4 (Release 2006a)
September 2006 Online only Revised for Version 3.1.5 (Release 2006b)
March 2007 Online only Revised for Version 3.2 (Release 2007a)
September 2007 Online only Revised for Version 3.2.2 (Release 2007b)
March 2008 Online only Revised for Version 3.2.3 (Release 2008a)
October 2008 Online only Revised for Version 5.0 (Release 2008a+)
October 2008 Online only Revised for Version 5.1 (Release 2008b)
November 2008 Online only Revised for Version 4.9 (Release 2007b+)
March 2009 Online only Revised for Version 5.2 (Release 2009a)
September 2009 Online only Revised for Version 5.3 (Release 2009b)
March 2010 Online only Revised for Version 5.4 (Release 2010a)
September 2010 Online only Revised for Version 5.5 (Release 2010b)
April 2011 Online only Revised for Version 5.6 (Release 2011a)
September 2011 Online only Revised for Version 5.7 (Release 2011b)
March 2012 Online only Revised for Version 5.8 (Release 2012a)
September 2012 Online only Revised for Version 5.9 (Release 2012b)
March 2013 Online only Revised for Version 5.10 (Release 2013a)
September 2013 Online only Revised for Version 5.11 (Release 2013b)
March 2014 Online only Revised for Version 6.0 (Release 2014a)
October 2014 Online only Revised for Version 6.1 (Release 2014b)
March 2015 Online only Revised for Version 6.2 (Release 2015a)
September 2015 Online only Revised for Version 6.3 (Release 2015b)
March 2016 Online only Revised for Version 7.0 (Release 2016a)
September 2016 Online only Revised for Version 7.1 (Release 2016b)
March 2017 Online only Revised for Version 7.2 (Release 2017a)
September 2017 Online only Revised for Version 8.0 (Release 2017b)
March 2018 Online only Revised for Version 8.1 (Release 2018a)
September 2018 Online only Revised for Version 8.2 (Release 2018b)
March 2019 Online only Revised for Version 8.3 (Release 2019a)
September 2019 Online only Revised for Version 8.4 (Release 2019b)
March 2020 Online only Revised for Version 8.5 (Release 2020a)
Contents

Getting Started
1
Symbolic Math Toolbox Product Description . . . . . . . . . . . . . . . . . . . . . . . 1-2
Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2

Create Symbolic Numbers, Variables, and Expressions . . . . . . . . . . . . . . . 1-3


Create Symbolic Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3
Create Symbolic Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3
Create Symbolic Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5
Reuse Names of Symbolic Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5

Create Symbolic Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7

Create Symbolic Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9


Use Existing Symbolic Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
Generate Elements While Creating a Matrix . . . . . . . . . . . . . . . . . . . . . . . 1-9
Create Matrix of Symbolic Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10

Perform Symbolic Computations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11


Differentiate Symbolic Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11
Integrate Symbolic Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
Solve Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
Simplify Symbolic Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-15
Substitutions in Symbolic Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
Plot Symbolic Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18

Use Assumptions on Symbolic Variables . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24


Default Assumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
Set Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
Check Existing Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25
Delete Symbolic Objects and Their Assumptions . . . . . . . . . . . . . . . . . . . 1-25

Using Symbolic Math Toolbox Software


2
Find Symbolic Variables in Expressions, Functions, Matrices . . . . . . . . . . 2-3
Find a Default Symbolic Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3

Choose syms or sym Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5

Add Subscripts, Superscripts, and Accents to Symbolic Variables . . . . . . 2-8

Change Output Display Format of Symbolic Results . . . . . . . . . . . . . . . . 2-12

v
Copy and Paste Symbolic Output in Live Editor . . . . . . . . . . . . . . . . . . . . 2-15

Units of Measurement Tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19


Define and Convert Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19
Use Temperature Units in Absolute or Difference Forms . . . . . . . . . . . . . 2-20
Verify Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-20
Use Units in Differential Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-22

Units and Unit Systems List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-25


Units List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-25
SI Unit Prefixes List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-35
Unit Systems List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-36
Defining Constants of SI Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-37

Unit Conversions and Unit Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-39


Convert Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-39
Temperature Unit Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-40
Convert to SI, CGS, or US Unit Systems . . . . . . . . . . . . . . . . . . . . . . . . . 2-40
Define Custom Unit System from Existing System . . . . . . . . . . . . . . . . . . 2-42
Define Custom Unit System Directly . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-43
Unit System Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-44

Differentiation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-46
Derivatives of Expressions with Several Variables . . . . . . . . . . . . . . . . . . 2-47
More Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-48

Functional Derivatives Tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-51

Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-56
One-Sided Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-56

Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-59
Integration with Real Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-61
Integration with Complex Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-62
High-Precision Numerical Integration Using Variable-Precision Arithmetic
..................................................... 2-63

Symbolic Summation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-65


Comparing symsum and sum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-65
Computational Speed of symsum versus sum . . . . . . . . . . . . . . . . . . . . . 2-65
Output Format Differences Between symsum and sum . . . . . . . . . . . . . . 2-66

Taylor Series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-67

Padé Approximant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-69

Find Asymptotes, Critical, and Inflection Points . . . . . . . . . . . . . . . . . . . 2-76

Simplify Symbolic Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-81


Simplify Using Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-82
Simplify Using Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-84
Simplify Fractions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-84

Solve Algebraic Equation Using Live Editor Task . . . . . . . . . . . . . . . . . . . 2-86

vi Contents
Simplify Symbolic Expressions Using Live Editor Task . . . . . . . . . . . . . . 2-94

Abbreviate Common Terms in Long Expressions . . . . . . . . . . . . . . . . . . 2-101

Choose Function to Rearrange Expression . . . . . . . . . . . . . . . . . . . . . . . 2-104


Combine Terms of Same Algebraic Structures . . . . . . . . . . . . . . . . . . . 2-104
Expand Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-105
Factor Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-106
Extract Subexpressions from Expression . . . . . . . . . . . . . . . . . . . . . . . 2-108
Collect Terms with Same Powers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-108
Rewrite Expressions in Terms of Other Functions . . . . . . . . . . . . . . . . . 2-109
Compute Partial Fraction Decompositions of Expressions . . . . . . . . . . . 2-110
Compute Normal Forms of Rational Expressions . . . . . . . . . . . . . . . . . . 2-110
Represent Polynomials Using Horner Nested Forms . . . . . . . . . . . . . . . 2-111

Clear Assumptions and Reset the Symbolic Engine . . . . . . . . . . . . . . . . 2-112


Check Assumptions Set on Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-113
Effects of Assumptions on Computations . . . . . . . . . . . . . . . . . . . . . . . . 2-114

Extract Numerators and Denominators of Rational Expressions . . . . . 2-115

Substitute Variables in Symbolic Expressions . . . . . . . . . . . . . . . . . . . . 2-117

Substitute Elements in Symbolic Matrices . . . . . . . . . . . . . . . . . . . . . . . 2-119

Substitute Scalars with Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-121

Evaluate Symbolic Expressions Using subs . . . . . . . . . . . . . . . . . . . . . . . 2-123

Choose Numeric or Symbolic Arithmetic . . . . . . . . . . . . . . . . . . . . . . . . 2-124


Double-Precision Arithmetic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-124
Variable-Precision Arithmetic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-124
Symbolic Arithmetic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-125
Comparisons of Numeric and Symbolic Arithmetic . . . . . . . . . . . . . . . . 2-126

Increase Precision of Numeric Calculations . . . . . . . . . . . . . . . . . . . . . . 2-128

Recognize and Avoid Round-Off Errors . . . . . . . . . . . . . . . . . . . . . . . . . . 2-130


Use Symbolic Computations When Possible . . . . . . . . . . . . . . . . . . . . . 2-130
Perform Calculations with Increased Precision . . . . . . . . . . . . . . . . . . . 2-130
Compare Symbolic and Numeric Results . . . . . . . . . . . . . . . . . . . . . . . . 2-132
Plot the Function or Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-132

Increase Speed by Reducing Precision . . . . . . . . . . . . . . . . . . . . . . . . . . 2-134

Numeric to Symbolic Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-136


Conversion to Rational Symbolic Form . . . . . . . . . . . . . . . . . . . . . . . . . 2-137
Conversion by Using Floating-Point Expansion . . . . . . . . . . . . . . . . . . . 2-137
Conversion to Rational Symbolic Form with Error Term . . . . . . . . . . . . 2-137
Conversion to Decimal Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-138

Basic Algebraic Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-139

Linear Algebraic Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-141


Symbolic Hilbert Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-141

vii
Symbolic Linear Algebra Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-141
Variable-Precision Arithmetic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-142
Symbolic Investigation of Singular Value . . . . . . . . . . . . . . . . . . . . . . . 2-143

Eigenvalues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-145

Jordan Canonical Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-149

Singular Value Decomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-151

Solve Algebraic Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-153


Solve an Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-153
Return the Full Solution to an Equation . . . . . . . . . . . . . . . . . . . . . . . . 2-153
Work with the Full Solution, Parameters, and Conditions Returned by solve
.................................................... 2-154
Visualize and Plot Solutions Returned by solve . . . . . . . . . . . . . . . . . . . 2-155
Simplify Complicated Results and Improve Performance . . . . . . . . . . . . 2-156

Solve a Second-Order Differential Equation Numerically . . . . . . . . . . . 2-157

Select Numeric or Symbolic Solver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-159

Solve System of Algebraic Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-160


Handle the Output of solve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-160
Solve a Linear System of Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-162
Return the Full Solution of a System of Equations . . . . . . . . . . . . . . . . . 2-162
Solve a System of Equations Under Conditions . . . . . . . . . . . . . . . . . . . 2-164
Work with Solutions, Parameters, and Conditions Returned by solve . . . 2-165
Convert Symbolic Results to Numeric Values . . . . . . . . . . . . . . . . . . . . 2-167
Simplify Complicated Results and Improve Performance . . . . . . . . . . . . 2-168

Troubleshoot Equation Solutions from solve Function . . . . . . . . . . . . . 2-169


Return Only Real Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-169
Apply Simplification Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-169
Use Assumptions to Narrow Results . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-170
Simplify Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-171
Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-171

Solve System of Linear Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-173


Solve System of Linear Equations Using linsolve . . . . . . . . . . . . . . . . . . 2-173
Solve System of Linear Equations Using solve . . . . . . . . . . . . . . . . . . . 2-174

Solve Equations Numerically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-176

Solve Differential Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-185


First-Order Linear ODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-185
Solve Differential Equation with Condition . . . . . . . . . . . . . . . . . . . . . . 2-185
Nonlinear Differential Equation with Initial Condition . . . . . . . . . . . . . . 2-186
Second-Order ODE with Initial Conditions . . . . . . . . . . . . . . . . . . . . . . 2-186
Third-Order ODE with Initial Conditions . . . . . . . . . . . . . . . . . . . . . . . . 2-186
More ODE Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-187

Solve a System of Differential Equations . . . . . . . . . . . . . . . . . . . . . . . . 2-189


Solve System of Differential Equations . . . . . . . . . . . . . . . . . . . . . . . . . 2-189
Solve Differential Equations in Matrix Form . . . . . . . . . . . . . . . . . . . . . 2-191

viii Contents
Solve Differential Algebraic Equations (DAEs) . . . . . . . . . . . . . . . . . . . . 2-194

Solve Semilinear DAE System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-203


Step 1. Reduce Differential Index with reduceDAEToODE . . . . . . . . . . . 2-203
Step 2. ODEs to Function Handles for ode15s and ode23t . . . . . . . . . . . 2-203
Step 3. Initial Conditions for ode15s and ode23t . . . . . . . . . . . . . . . . . . 2-204
Step 4. Solve an ODE System with ode15s or ode23t . . . . . . . . . . . . . . 2-206

Solve DAEs Using Mass Matrix Solvers . . . . . . . . . . . . . . . . . . . . . . . . . . 2-209


Step 1. Convert DAEs to Function Handles . . . . . . . . . . . . . . . . . . . . . . 2-209
Step 2. Find Initial Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-210
Step 3. Solve DAE System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-211

Fourier and Inverse Fourier Transforms . . . . . . . . . . . . . . . . . . . . . . . . . 2-214


Fourier Transform Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-214
Concept: Using Symbolic Workflows . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-214
Calculate Beam Deflection Using Fourier Transform . . . . . . . . . . . . . . . 2-214

Solve Differential Equations Using Laplace Transform . . . . . . . . . . . . . 2-218


Definition: Laplace Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-218
Concept: Using Symbolic Workflows . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-218
Workflow: Solve RLC Circuit Using Laplace Transform . . . . . . . . . . . . . 2-218

Solve Difference Equations Using Z-Transform . . . . . . . . . . . . . . . . . . . . 2-224


Definition: Z-transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-224
Concept: Using Symbolic Workflows . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-224
Workflow: Solve "Rabbit Growth" Problem Using Z-Transform . . . . . . . 2-224
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-228

Create Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-229


Plot with Symbolic Plotting Functions . . . . . . . . . . . . . . . . . . . . . . . . . . 2-229
Plot Functions Numerically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-231
Plot Multiple Symbolic Functions in One Graph . . . . . . . . . . . . . . . . . . 2-232
Plot Multiple Symbolic Functions in One Figure . . . . . . . . . . . . . . . . . . 2-233
Combine Symbolic Function Plots and Numeric Data Plots . . . . . . . . . . 2-234
Combine Numeric and Symbolic Plots in 3-D . . . . . . . . . . . . . . . . . . . . 2-236

Plotting in Spherical Coordinate System . . . . . . . . . . . . . . . . . . . . . . . . 2-239

Analytical Solutions of the Inverse Kinematics of a Humanoid Robot 2-241

Analytical Model of Cantilever Truss Structure for Simscape . . . . . . . . 2-252

Estimate Model Parameters of a Symbolically Derived Plant Model in


Simulink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-260

Generate C or Fortran Code from Symbolic Expressions . . . . . . . . . . . . 2-266

Generate MATLAB Functions from Symbolic Expressions . . . . . . . . . . . 2-267


Generating a Function Handle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-267
Control the Order of Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-267
Generate a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-268
Name Output Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-269

ix
Generate MATLAB Function Blocks from Symbolic Expressions . . . . . 2-270
Generate and Edit a Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-270
Control the Order of Input Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-270
Name the Output Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-270

Generate Simscape Equations from Symbolic Expressions . . . . . . . . . . 2-272


Convert Algebraic and Differential Equations . . . . . . . . . . . . . . . . . . . . 2-272
Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-273

MuPAD to MATLAB Migration


3
MuPAD Engines and MATLAB Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2

Convert MuPAD Notebooks to MATLAB Live Scripts . . . . . . . . . . . . . . . . . 3-3


Convert a MuPAD Notebook .mn to a MATLAB Live Script .mlx . . . . . . . . . 3-3
Convert MuPAD Graphics to MATLAB Graphics . . . . . . . . . . . . . . . . . . . . 3-3
Known Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4

Troubleshoot MuPAD to MATLAB Translation Errors . . . . . . . . . . . . . . . . . 3-8

Troubleshoot MuPAD to MATLAB Translation Warnings . . . . . . . . . . . . . 3-15

Differences Between MATLAB and MuPAD Syntax . . . . . . . . . . . . . . . . . . 3-20

Call Built-In MuPAD Functions from MATLAB . . . . . . . . . . . . . . . . . . . . . 3-22


evalin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-22
feval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-22
evalin vs. feval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-23
Floating-Point Arguments of evalin and feval . . . . . . . . . . . . . . . . . . . . . 3-23

Functions
4

x Contents
1

Getting Started

• “Symbolic Math Toolbox Product Description” on page 1-2


• “Create Symbolic Numbers, Variables, and Expressions” on page 1-3
• “Create Symbolic Functions” on page 1-7
• “Create Symbolic Matrices” on page 1-9
• “Perform Symbolic Computations” on page 1-11
• “Use Assumptions on Symbolic Variables” on page 1-24
1 Getting Started

Symbolic Math Toolbox Product Description


Perform symbolic math computations

Symbolic Math Toolbox provides functions for solving, plotting, and manipulating symbolic math
equations. You can create, run, and share symbolic math code using the MATLAB Live Editor. The
toolbox provides functions in common mathematical areas such as calculus, linear algebra, algebraic
and ordinary differential equations, equation simplification, and equation manipulation.

Symbolic Math Toolbox lets you analytically perform differentiation, integration, simplification,
transforms, and equation solving. You can perform dimensional computations and conversions using
SI and US unit systems. Your computations can be performed either analytically or using variable-
precision arithmetic, with the results displayed in mathematical typeset.

You can share your symbolic work with other MATLAB users as live scripts or convert them to HTML
or PDF for publication. You can generate MATLAB functions, Simulink® function blocks, and
Simscape™ equations directly from symbolic expressions.

Key Features
• Symbolic integration, differentiation, transforms, and linear algebra
• Algebraic and ordinary differential equation (ODE) solvers
• Simplification and manipulation of symbolic expressions
• Unit systems for specifying, converting, and computing using SI, US, and custom unit systems
• Plotting of analytical functions in 2D and 3D
• Symbolic expression conversion to MATLAB, Simulink, Simscape, C, Fortran, and LaTeX code
• Variable-precision arithmetic

1-2
Create Symbolic Numbers, Variables, and Expressions

Create Symbolic Numbers, Variables, and Expressions


This page shows how to create symbolic numbers, variables, and expressions. To learn how to work
with symbolic math, see “Perform Symbolic Computations” on page 1-11.

Create Symbolic Numbers


You can create symbolic numbers by using sym. Symbolic numbers are exact representations, unlike
floating-point numbers.

Create a symbolic number by using sym and compare it to the same floating-point number.
sym(1/3)
1/3

ans =
1/3
ans =
0.3333

The symbolic number is represented in exact rational form, while the floating-point number is a
decimal approximation. The symbolic result is not indented, while the standard MATLAB result is
indented.

Calculations on symbolic numbers are exact. Demonstrate this exactness by finding sin(pi)
symbolically and numerically. The symbolic result is exact, while the numeric result is an
approximation.
sin(sym(pi))
sin(pi)

ans =
0
ans =
1.2246e-16

To learn more about symbolic representation of numbers, see “Numeric to Symbolic Conversion” on
page 2-136.

Create Symbolic Variables


You can create symbolic variables using either syms or sym. Typical uses of these functions include:

• sym – Create numbered symbolic variables or create symbolic variables in MATLAB functions.
• syms – Create fresh symbolic variables for interactive symbolic workflows, that is, for symbolic
variable creation at the MATLAB command line or in MATLAB live scripts. A fresh symbolic
variable does not have any assumptions.

The syms command is shorthand for the sym syntax, but the two functions handle assumptions
differently. For more details, see “Reuse Names of Symbolic Objects” on page 1-5.

Create the symbolic variables x and y using syms and sym, respectively.
syms x
y = sym('y')

1-3
1 Getting Started

The first command creates a symbolic variable x in the MATLAB workspace with the value x assigned
to the variable x. The second command creates a symbolic variable y with the value y.

With syms, you can create multiple variables in one command. Create the variables a, b, and c.

syms a b c

If you want to create a MATLAB array of numbered symbolic variables, the syms syntax is
inconvenient. Therefore, use sym instead to create an array of many numbered symbolic variables.

Clear the workspace. Create a row vector containing the symbolic variables a1, ..., a20 and
assign it to the MATLAB variable A. Display the variable in the MATLAB workspace.

clear all
A = sym('a', [1 20])
whos

A =
[ a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,...
a11, a12, a13, a14, a15, a16, a17, a18, a19, a20]

Name Size Bytes Class Attributes

A 1x20 8 sym

A is a 1-by-20 array of 20 symbolic variables.

By combining sym and syms, you can create many fresh symbolic variables with corresponding
variables name in the MATLAB workspace.

Clear the workspace. Create the fresh symbolic variables a1, ..., a10 and assign them the
MATLAB variable names a1, ..., a10, respectively. Display the variables in the MATLAB
workspace.

clear all
syms(sym('a', [1 10]))
whos

Name Size Bytes Class Attributes

a1 1x1 8 sym
a10 1x1 8 sym
a2 1x1 8 sym
a3 1x1 8 sym
a4 1x1 8 sym
a5 1x1 8 sym
a6 1x1 8 sym
a7 1x1 8 sym
a8 1x1 8 sym
a9 1x1 8 sym

The MATLAB workspace contains 10 MATLAB variables that are symbolic variables.

The syms command is a convenient shorthand for the sym syntax, and its typical use is to create fresh
symbolic variables for interactive symbolic workflows. Use the sym syntax to create the following:

• Symbolic variables in MATLAB functions

1-4
Create Symbolic Numbers, Variables, and Expressions

• Many numbered symbolic variables


• Symbolic variable whose value differs from its name in the MATLAB workspace
• Symbolic number, such as sym(5)
• Symbolic variable that inherits the assumptions from a previously used symbolic variable having
the same name

Create Symbolic Expressions


Suppose you want to use a symbolic variable to represent the golden ratio

1+ 5
φ=
2

The command
phi = (1 + sqrt(sym(5)))/2;

achieves this goal. Now you can perform various mathematical operations on phi. For example,
f = phi^2 - phi - 1

returns
f =
(5^(1/2)/2 + 1/2)^2 - 5^(1/2)/2 - 3/2

Now suppose you want to study the quadratic function f = ax2 + bx + c. First, create the symbolic
variables a, b, c, and x:
syms a b c x

Then, assign the expression to f:


f = a*x^2 + b*x + c;

Tip To create a symbolic number, use the sym command. Do not use the syms function to create a
symbolic expression that is a constant. For example, to create the expression whose value is 5, enter
f = sym(5). The command f = 5 does not define f as a symbolic expression.

Reuse Names of Symbolic Objects


If you set a variable equal to a symbolic expression, and then apply the syms command to the
variable, MATLAB software removes the previously defined expression from the variable. For
example,
syms a b
f = a + b

returns
f =
a + b

If later you enter

1-5
1 Getting Started

syms f
f

then MATLAB removes the value a + b from the expression f:

f =
f

You can use the syms command to clear variables of definitions that you previously assigned to them
in your MATLAB session. syms clears the assumptions of the variables: complex, real, integer, and
positive. These assumptions are stored separately from the symbolic object. However, recreating a
variable using sym does not clear its assumptions. For more information, see “Delete Symbolic
Objects and Their Assumptions” on page 1-25.

See Also

More About
• “Create Symbolic Functions” on page 1-7
• “Create Symbolic Matrices” on page 1-9
• “Choose syms or sym Function” on page 2-5
• “Perform Symbolic Computations” on page 1-11
• “Use Assumptions on Symbolic Variables” on page 1-24

1-6
Create Symbolic Functions

Create Symbolic Functions


Symbolic functions represent math functions. Use symbolic functions for differentiation, integration,
solving ODEs, and other math operations. Create symbolic functions by using syms.

Create a symbolic function f with variables x and y by using syms. Creating f automatically creates
x and y.

syms f(x,y)

Assign a mathematical expression to f.

f(x,y) = x^2*y

f(x, y) =
x^2*y

Find the value of f at (3,2).

f(3,2)

ans =
18

Symbolic functions accept array inputs. Calculate f for multiple values of x and y.

xVal = 1:5;
yVal = 3:7;
f(xVal,yVal)

ans =
[ 3, 16, 45, 96, 175]

You can differentiate symbolic functions, integrate or simplify them, substitute their arguments with
values, and perform other mathematical operations. For example, find the derivative of f(x,y) with
respect to x. The result dfx is also a symbolic function.

dfx = diff(f,x)

dfx(x,y) =
2*x*y

Calculate df(x,y) at x = y + 1.

dfx(y+1,y)

ans =
2*y*(y + 1)

If you are creating a constant function, such as f(x,y) = 1, you must first create f(x,y). If you do
not create f(x,y), then the assignment f(x,y) = 1 throws an error.

1-7
1 Getting Started

See Also

More About
• “Create Symbolic Numbers, Variables, and Expressions” on page 1-3
• “Create Symbolic Matrices” on page 1-9
• “Perform Symbolic Computations” on page 1-11
• “Use Assumptions on Symbolic Variables” on page 1-24

1-8
Create Symbolic Matrices

Create Symbolic Matrices


In this section...
“Use Existing Symbolic Variables” on page 1-9
“Generate Elements While Creating a Matrix” on page 1-9
“Create Matrix of Symbolic Numbers” on page 1-10

Use Existing Symbolic Variables


A circulant matrix has the property that each row is obtained from the previous one by cyclically
permuting the entries one step forward. For example, create the symbolic circulant matrix whose
elements are a, b, and c, using the commands:

syms a b c
A = [a b c; c a b; b c a]

A =
[ a, b, c]
[ c, a, b]
[ b, c, a]

Since matrix A is circulant, the sum of elements over each row and each column is the same. Find the
sum of all the elements of the first row:

sum(A(1,:))

ans =
a + b + c

To check if the sum of the elements of the first row equals the sum of the elements of the second
column, use the isAlways function:

isAlways(sum(A(1,:)) == sum(A(:,2)))

The sums are equal:

ans =
logical
1

From this example, you can see that using symbolic objects is very similar to using regular MATLAB
numeric objects.

Generate Elements While Creating a Matrix


The sym function also lets you define a symbolic matrix or vector without having to define its
elements in advance. In this case, the sym function generates the elements of a symbolic matrix at
the same time that it creates a matrix. The function presents all generated elements using the same
form: the base (which must be a valid variable name), a row index, and a column index. Use the first
argument of sym to specify the base for the names of generated elements. You can use any valid
variable name as a base. To check whether the name is a valid variable name, use the isvarname
function. By default, sym separates a row index and a column index by underscore. For example,
create the 2-by-4 matrix A with the elements A1_1, ..., A2_4:

1-9
1 Getting Started

A = sym('A', [2 4])

A =
[ A1_1, A1_2, A1_3, A1_4]
[ A2_1, A2_2, A2_3, A2_4]

To control the format of the generated names of matrix elements, use %d in the first argument:

A = sym('A%d%d', [2 4])

A =
[ A11, A12, A13, A14]
[ A21, A22, A23, A24]

Create Matrix of Symbolic Numbers


A particularly effective use of sym is to convert a matrix from numeric to symbolic form. The
command

A = hilb(3)

generates the 3-by-3 Hilbert matrix:

A =
1.0000 0.5000 0.3333
0.5000 0.3333 0.2500
0.3333 0.2500 0.2000

By applying sym to A

A = sym(A)

you can obtain the precise symbolic form of the 3-by-3 Hilbert matrix:

A =
[ 1, 1/2, 1/3]
[ 1/2, 1/3, 1/4]
[ 1/3, 1/4, 1/5]

For more information on numeric to symbolic conversions, see “Numeric to Symbolic Conversion” on
page 2-136.

See Also

More About
• “Create Symbolic Numbers, Variables, and Expressions” on page 1-3
• “Create Symbolic Functions” on page 1-7
• “Perform Symbolic Computations” on page 1-11
• “Use Assumptions on Symbolic Variables” on page 1-24

1-10
Perform Symbolic Computations

Perform Symbolic Computations

In this section...
“Differentiate Symbolic Expressions” on page 1-11
“Integrate Symbolic Expressions” on page 1-12
“Solve Equations” on page 1-13
“Simplify Symbolic Expressions” on page 1-15
“Substitutions in Symbolic Expressions” on page 1-16
“Plot Symbolic Functions” on page 1-18

Differentiate Symbolic Expressions


With the Symbolic Math Toolbox software, you can find

• Derivatives of single-variable expressions


• Partial derivatives
• Second and higher order derivatives
• Mixed derivatives

For in-depth information on taking symbolic derivatives see “Differentiation” on page 2-46.

Expressions with One Variable

To differentiate a symbolic expression, use the diff command. The following example illustrates how
to take a first derivative of a symbolic expression:

syms x
f = sin(x)^2;
diff(f)

ans =
2*cos(x)*sin(x)

Partial Derivatives

For multivariable expressions, you can specify the differentiation variable. If you do not specify any
variable, MATLAB chooses a default variable by its proximity to the letter x:

syms x y
f = sin(x)^2 + cos(y)^2;
diff(f)

ans =
2*cos(x)*sin(x)

For the complete set of rules MATLAB applies for choosing a default variable, see “Find a Default
Symbolic Variable” on page 2-3.

To differentiate the symbolic expression f with respect to a variable y, enter:

1-11
1 Getting Started

syms x y
f = sin(x)^2 + cos(y)^2;
diff(f, y)

ans =
-2*cos(y)*sin(y)

Second Partial and Mixed Derivatives

To take a second derivative of the symbolic expression f with respect to a variable y, enter:

syms x y
f = sin(x)^2 + cos(y)^2;
diff(f, y, 2)

ans =
2*sin(y)^2 - 2*cos(y)^2

You get the same result by taking derivative twice: diff(diff(f, y)). To take mixed derivatives,
use two differentiation commands. For example:

syms x y
f = sin(x)^2 + cos(y)^2;
diff(diff(f, y), x)

ans =
0

Integrate Symbolic Expressions


You can perform symbolic integration including:

• Indefinite and definite integration


• Integration of multivariable expressions

For in-depth information on the int command including integration with real and complex
parameters, see “Integration” on page 2-59.

Indefinite Integrals of One-Variable Expressions

Suppose you want to integrate a symbolic expression. The first step is to create the symbolic
expression:

syms x
f = sin(x)^2;

To find the indefinite integral, enter

int(f)

ans =
x/2 - sin(2*x)/4

Indefinite Integrals of Multivariable Expressions

If the expression depends on multiple symbolic variables, you can designate a variable of integration.
If you do not specify any variable, MATLAB chooses a default variable by the proximity to the letter x:

1-12
Perform Symbolic Computations

syms x y n
f = x^n + y^n;
int(f)

ans =
x*y^n + (x*x^n)/(n + 1)

For the complete set of rules MATLAB applies for choosing a default variable, see “Find a Default
Symbolic Variable” on page 2-3.

You also can integrate the expression f = x^n + y^n with respect to y

syms x y n
f = x^n + y^n;
int(f, y)

ans =
x^n*y + (y*y^n)/(n + 1)

If the integration variable is n, enter

syms x y n
f = x^n + y^n;
int(f, n)

ans =
x^n/log(x) + y^n/log(y)

Definite Integrals

To find a definite integral, pass the limits of integration as the final two arguments of the int
function:

syms x y n
f = x^n + y^n;
int(f, 1, 10)

ans =
piecewise(n == -1, log(10) + 9/y, n ~= -1,...
(10*10^n - 1)/(n + 1) + 9*y^n)

If MATLAB Cannot Find a Closed Form of an Integral

If the int function cannot compute an integral, it returns an unresolved integral:

syms x
int(sin(sinh(x)))

ans =
int(sin(sinh(x)), x)

Solve Equations
You can solve different types of symbolic equations including:

• Algebraic equations with one symbolic variable


• Algebraic equations with several symbolic variables

1-13
1 Getting Started

• Systems of algebraic equations

For in-depth information on solving symbolic equations including differential equations, see “Equation
Solving”.

Solve Algebraic Equations with One Symbolic Variable

Use the double equal sign (==) to define an equation. Then you can solve the equation by calling
the solve function. For example, solve this equation:

syms x
solve(x^3 - 6*x^2 == 6 - 11*x)

ans =
1
2
3

If you do not specify the right side of the equation, solve assumes that it is zero:

syms x
solve(x^3 - 6*x^2 + 11*x - 6)

ans =
1
2
3

Solve Algebraic Equations with Several Symbolic Variables

If an equation contains several symbolic variables, you can specify a variable for which this equation
should be solved. For example, solve this multivariable equation with respect to y:

syms x y
solve(6*x^2 - 6*x^2*y + x*y^2 - x*y + y^3 - y^2 == 0, y)

ans =
1
2*x
-3*x

If you do not specify any variable, you get the solution of an equation for the alphabetically closest to
x variable. For the complete set of rules MATLAB applies for choosing a default variable see “Find a
Default Symbolic Variable” on page 2-3.

Solve Systems of Algebraic Equations

You also can solve systems of equations. For example:

syms x y z
[x, y, z] = solve(z == 4*x, x == y, z == x^2 + y^2)

x =
0
2

y =
0

1-14
Perform Symbolic Computations

z =
0
8

Simplify Symbolic Expressions


Symbolic Math Toolbox provides a set of simplification functions allowing you to manipulate the
output of a symbolic expression. For example, the following polynomial of the golden ratio phi

phi = (1 + sqrt(sym(5)))/2;
f = phi^2 - phi - 1

returns

f =
(5^(1/2)/2 + 1/2)^2 - 5^(1/2)/2 - 3/2

You can simplify this answer by entering

simplify(f)

and get a very short answer:

ans =
0

Symbolic simplification is not always so straightforward. There is no universal simplification function,


because the meaning of a simplest representation of a symbolic expression cannot be defined clearly.
Different problems require different forms of the same mathematical expression. Knowing what form
is more effective for solving your particular problem, you can choose the appropriate simplification
function.

For example, to show the order of a polynomial or symbolically differentiate or integrate a


polynomial, use the standard polynomial form with all the parentheses multiplied out and all the
similar terms summed up. To rewrite a polynomial in the standard form, use the expand function:

syms x
f = (x ^2- 1)*(x^4 + x^3 + x^2 + x + 1)*(x^4 - x^3 + x^2 - x + 1);
expand(f)

ans =
x^10 - 1

The factor simplification function shows the polynomial roots. If a polynomial cannot be factored
over the rational numbers, the output of the factor function is the standard polynomial form. For
example, to factor the third-order polynomial, enter:

syms x
g = x^3 + 6*x^2 + 11*x + 6;
factor(g)

ans =
[ x + 3, x + 2, x + 1]

The nested (Horner) representation of a polynomial is the most efficient for numerical evaluations:

1-15
1 Getting Started

syms x
h = x^5 + x^4 + x^3 + x^2 + x;
horner(h)

ans =
x*(x*(x*(x*(x + 1) + 1) + 1) + 1)

For a list of Symbolic Math Toolbox simplification functions, see “Choose Function to Rearrange
Expression” on page 2-104.

Substitutions in Symbolic Expressions


Substitute Symbolic Variables with Numbers

You can substitute a symbolic variable with a numeric value by using the subs function. For example,
evaluate the symbolic expression f at the point x = 1/3:

syms x
f = 2*x^2 - 3*x + 1;
subs(f, 1/3)

ans =
2/9

The subs function does not change the original expression f:

f =
2*x^2 - 3*x + 1

Substitute in Multivariate Expressions

When your expression contains more than one variable, you can specify the variable for which you
want to make the substitution. For example, to substitute the value x = 3 in the symbolic expression

syms x y
f = x^2*y + 5*x*sqrt(y);

enter the command

subs(f, x, 3)

ans =
9*y + 15*y^(1/2)

Substitute One Symbolic Variable for Another

You also can substitute one symbolic variable for another symbolic variable. For example to replace
the variable y with the variable x, enter

subs(f, y, x)

ans =
x^3 + 5*x^(3/2)

1-16
Perform Symbolic Computations

Substitute a Matrix into a Polynomial

You can also substitute a matrix into a symbolic polynomial with numeric coefficients. There are two
ways to substitute a matrix into a polynomial: element by element and according to matrix
multiplication rules.
Element-by-Element Substitution

To substitute a matrix at each element, use the subs command:

syms x
f = x^3 - 15*x^2 - 24*x + 350;
A = [1 2 3; 4 5 6];
subs(f,A)

ans =
[ 312, 250, 170]
[ 78, -20, -118]

You can do element-by-element substitution for rectangular or square matrices.


Substitution in a Matrix Sense

If you want to substitute a matrix into a polynomial using standard matrix multiplication rules, a
matrix must be square. For example, you can substitute the magic square A into a polynomial f:

1 Create the polynomial:

syms x
f = x^3 - 15*x^2 - 24*x + 350;
2 Create the magic square matrix:

A = magic(3)

A =
8 1 6
3 5 7
4 9 2
3 Get a row vector containing the numeric coefficients of the polynomial f:

b = sym2poly(f)

b =
1 -15 -24 350
4 Substitute the magic square matrix A into the polynomial f. Matrix A replaces all occurrences of
x in the polynomial. The constant times the identity matrix eye(3) replaces the constant term of
f:

A^3 - 15*A^2 - 24*A + 350*eye(3)

ans =
-10 0 0
0 -10 0
0 0 -10

The polyvalm command provides an easy way to obtain the same result:

polyvalm(b,A)

1-17
1 Getting Started

ans =
-10 0 0
0 -10 0
0 0 -10

Substitute the Elements of a Symbolic Matrix

To substitute a set of elements in a symbolic matrix, also use the subs command. Suppose you want
to replace some of the elements of a symbolic circulant matrix A

syms a b c
A = [a b c; c a b; b c a]

A =
[ a, b, c]
[ c, a, b]
[ b, c, a]

To replace the (2, 1) element of A with beta and the variable b throughout the matrix with variable
alpha, enter

alpha = sym('alpha');
beta = sym('beta');
A(2,1) = beta;
A = subs(A,b,alpha)

The result is the matrix:

A =
[ a, alpha, c]
[ beta, a, alpha]
[ alpha, c, a]

For more information, see “Substitute Elements in Symbolic Matrices” on page 2-119.

Plot Symbolic Functions


Symbolic Math Toolbox provides the plotting functions:

• fplot to create 2-D plots of symbolic expressions, equations, or functions in Cartesian


coordinates.
• fplot3 to create 3-D parametric plots.
• ezpolar to create plots in polar coordinates.
• fsurf to create surface plots.
• fcontour to create contour plots.
• fmesh to create mesh plots.

Explicit Function Plot

Create a 2-D line plot by using fplot. Plot the expression x3 − 6x2 + 11x − 6.

syms x
f = x^3 - 6*x^2 + 11*x - 6;
fplot(f)

1-18
Perform Symbolic Computations

Add labels for the x- and y-axes. Generate the title by using texlabel(f). Show the grid by using
grid on. For details, see “Add Title and Axis Labels to Chart” (MATLAB).

xlabel('x')
ylabel('y')
title(texlabel(f))
grid on

1-19
Another Random Scribd Document
with Unrelated Content
vitkastella asioilla. Oli annettava selkään jollekin vihamiehelle,
viskattava kivellä jotakin, jota ei muuten ehtinyt tavoittaa ja
lauvantaipäivinä oli oltava mukana ainaisessa tappelussa
maalaispoikain kanssa. Sitä paitse ei hän raskinut jättää entistä
sukkelaa temppuaan jalkakammilla keikauttaa kumoon rauhallisesti
kulkevia ihmisiä. Useasti hän tuli asioilta hengästyneenä ja verissä
naamoin, ja kun kysyttiin, mitä hänelle oli tapahtunut, sanoi hän
kaatuneensa tai että joku mies, jota hän ei ollenkaan tuntenut, oli
hänet aivan syyttömästi tyrkännyt kivikatuun.

Joku vaimo jo kävi kauppaneuvokselle valittamassa, että Eerikki


oli pahasti lyönyt hänen pientä viatonta Kustiaan. Äiti sanoi tulleensa
tästä valittamaan kauppaneuvokselle sen tähden, koska tuo kelvoton
poika ei varmaan kotonaan saa mitään kristillistä opetusta ja
kuritusta.

Mutta Eerikin elämässä tapahtui ihmeellinen käänne.

Eräs kauppaneuvoksen sukulaisneiti palasi ulkomailta ja tuli


kassööriksi konttooriin.

Hän oli kaunis, miellyttävä, luonteeltaan herttainen, saanut hienon


kasvatuksen sekä koti- että ulkomaalla.

Eerikki sai ihmeellisen kunnioituksen neitiin.

Ensi kerran näki nyt Eerikki neidin — ennen oli hän nähnyt hänet
vaan etäämpää ja sattumalta — kun neiti soitti hänet luokseen
pieneen kammariin suuremman konttoorihuoneen taakse. Eerikki
vähän ällistyi ja sai hyvin kunnioittavan tunteen neitiä ja kaikkea
hänen läheisyyttään kohtaan. Neiti näytti niin ylhäiseltä ja hienolta,
hänellä näytti olevan hyvin kalliit kapineet huoneessaan, ja Eerikki
kuvitteli ison mustan rautakaapin olevan täynnä kultarahoja ja suuria
seteliä, jotka kaikki olivat neidin hallussa. Ja voivathan ne kaikki olla
neidin omiakin, hyvinkin omia tuon neidin, joka oli monta vuotta ollut
ulkomailla, tuolla kaukana maiden ja merien takana, missä Eerikki
kuvitteli olevan vaan rikkautta ja onnea.

Neiti katsoi ensin Eerikkiä silmiin ja sitte koko poikaa, jolloin


Eerikki lensi yltäänsä punaiseksi.

— Ei käsiä pidetä taskuissa, sanoi neiti lempeästi.

Eerikki sivalsi kätensä housuntaskuista, joissa ne olivat hyväilleet


kauppaneuvoksen poroastiasta puhallettuja sikaarin pätkiä, ja seisoi
pystynä ja nöyränä kuin ensipäiväinen sotamies päällikkönsä
edessä.

Neiti antoi pari kirjettä, jotka käski viedä postiin. Vaan kun Eerikki
yritti niitä ottamaan, sanoi hän:

— Kädet pitää olla puhtaat! Kuinka sinä noin likaisilla käsillä…

Eerikki huomasi sikaarin pätkistä kätensä likaantuneen ja


hohtavan punaisena kiirehti niitä pesemään.

Viedessään sitte noita neidin lähettämiä kirjeitä tunsi Eerikki


kummallista kuumetta, ja se asia, jolle neiti oli hänet lähettänyt,
tuntui hänestä hyvin tärkeältä ja kalliilta. Hän käveli hirveän kiireesti
ja katujen poikki kiirehti juoksujalassa.

Hän palasi hengästyneenä, heitti hatun päästään naulaan, ja oli


lähteä sisään, vaan samassa vaistomaisesti kääntyi ja meni peilin
eteen. Hän kasteli kamman, kampasi ja harjasi tukkaansa, laittoi
kaulusta ja katseli kätensä. Moneen kertaan yritettyään sisään ja
aina käännyttyään peilistä jotakin katsomaan, meni hän vihdoin
sisään neidin luo.

— Sinäpä sievästi kävit, sanoi neiti. Minä rupean sinusta


pitämään, kun vastakin niin sievästi käyt.

Palattuaan neidin luota etehiseen Eerikki töytäsi peilin eteen,


nähdäkseen etteihän hänessä vaan lie ollut mitään likaista tahi
sopimatonta. Sitte hän istui ajattelemaan.

Hän ei oikeastaan mitään ajatellut, vaan tunsi sitä vaikutusta,


minkä nyt oli saanut, että neiti oli ylen ylhäinen ja hirveän hieno, että
hän häntä kunnioitti ja pelkäsi ja… Se ei ollut selvää, mitä hän vielä
tunsi, vaan hänen mielessään pyörivät neidin sanat: "minä rupean
sinusta pitämään, kun vastakin niin sievästi käyt" — ja neidin
lempeä, suurten vaaleansinisten silmäin kaunis katse häneen.
Yhtäkkiä hyppäsi hän ajatuksistaan peilin eteen, kasteli kamman —
ja kampasi ja harjasi taas. Hän tarkasteli, oliko hänessä kaikki niin
kuin olla pitää, puhdasta. Kasvojaan hän myös katseli, vaan ei hän
tiennyt, oliko hän kaunis vai ruma. Hän ennemmin piti itseään
rumana, sillä toiset pojat olivat häntä haukkuneet mustilaispojaksi
hänen tummaverisyytensä tähden. Sitä hän ei osannut huolehtia,
oliko hän ruma vai kaunis, häntä vaan loukkasi tuo herjaava vertaus
mustilaispoikaan. Olisi kuitenkin onnettomuus, jos hän todellakin olisi
mustilaispojan näköinen.

Hän muisti nyt tämän, meni peilistä katsomaan ja koetti arvailla,


oliko hän neidin mielestä mustilaispojan näköinen. Se nyt olisi
ilkeätä, jos hän sen näköinen olisi. Vaan lempeä ja hyvähän tuo neiti
oli hänelle.

Kotona hän kysyi äidiltään, oliko hän mustilaispojan näköinen.


— Et toki. Kuka sinua on semmoiseksi sanonut?

— Pojat ovat minua siksi haukkuneet.

Eerikki ajatteli ja kysyi sitte, ei kuitenkaan minään niin tärkeänä


asiana:

— Olenkos minä kaunis vai ruma?

— Mistä sinä nyt olet saanut päähäsi semmoista kysellä?


Kaunishan sinä olet.

— Oikeinko todella? kysyi Eerikki äkkiä, sillä hän oli äidin


katseesta ja äänen painosta huomannut, että kauneus oli jotakin
kallista.

— Oikein todella sinä olet kaunis. Sinusta tulee vielä kaunis mies
— (isääsi), lisäsi äiti ajatuksissaan.

Eerikki taas ajatteli. Tumma puna kohosi hänen kasvoihinsa, ja


hän kysyi:

— Milloinkas sitä on kaunis ja kuka se on kaunis?

— Harvat ne kauniita ovat. Kaunis on se, joka ei ole ruma, en


minä osaa häntä muuten selittää.

Eerikki ajatteli ja kysyi, kovasti punastuen:

— Eikös kauppaneuvoksen neiti ole kaunis?

— Kaunishan se on hyvin kaunis. Ja sitte se on hyvin rikas


myöskin, poikaseni!
Eerikki valvoi iltasella kauvan ja ajatteli kauppaneuvoksen
neidistä. Neiti oli niin ylhäinen, rikas ja kaunis. Kauneudesta hän
ajatteli, kuinka vaan harvat ovat kauniita, vaan hän on kaunis. Mutta
taas tuli tuo poikain herjaus, ja hän nousi ylös, otti tulen ja katseli
peilistä kasvojaan. —

Hänellä oli kummallinen halu toimittaa nyt muidenkin asiat


nopeasti ja sievästi. Hän pelkäsi hirveästi, jos jollakin tavalla häntä
konttoorissa moitittaisiin ja se tulisi neidin tietoon. Hän pelkäsi myös
kaipuita ja sen tähden nyt karttoi tappeluita. Kadulla kiireesti
kulkiessaan hän vaan sanoi jonkun pahan sanan entisille
tovereilleen ja hävyttömille haukkujilleen hän pui nyrkkiä ja malttaen
mieltään muistutti:

— Muistakaapas lurjukset, kuinka monasti olette multa selkäänne


saaneet!

Mutta tupakkaa hän poltteli edelleen ja varasteli sikaarin ja


paperossin päitä, ottipa joskus kokonaisiakin kauppaneuvoksen
kammarista, sitä siivotessaan aamusella.

Kerran yhytti hänet neiti sikaaria kievellyttämästä


kauppaneuvoksen pöydältä. Eerikki oli saada halvauksen, kun neiti
huomasi hänet ja nuhteli:

— Enpä minä olisi luullut sinun vielä osaavan tupakoida. Jätä


poika kulta pois semmoinen paha tapa!

Eerikille ei oltu opetettu anteeksi pyytämisen taitoa eikä hän ollut


koskaan anteeksi pyytänyt, vaan nyt osasi hän aivan itsestään
nöyrästi pyytää neidiltä anteeksi ja vakuuttaen luvata, ettei hän
koskaan vasta varasta tupakoita ja että hän heittää polton pois.
Heti tämän jälkeen heittikin hän uuniin suuren varaston tupakan
pätkiään, vaan katseli niiden palamista suurella säälillä. Mutta
hänellä oli nyt ihmeellinen tahdon voima jättää poltto pois.

Eräänä päivänä kuuli Eerikki hyvin tärkeän asian. Hän kuuli neidin
kysyvän vanhemmalta kirjanpitäjältä:

— Mistä se on meille saatu tuo Eerikki? Se on niin kaunis poika.

— Se on meidän myllynhoitajan poika, vastasi kirjanpitäjä,


salaperäisesti hymyillen.

Eerikki kuunteli henkeä vetämättä ja lensi sitte peilin eteen. Kaunis


tumma puna oli hänen kasvoissaan, silmänsä säteilivät kauniisti ja
tukkansa oli sievissä kiharoissa otsalla. Ne huomasi nyt Eerikki,
ymmärsi että ne olivat hänessä kaunista. Tuhmapa hän oli ollut, kun
oli aina aamusin kastellut tukkansa ja harjannut nuo kiharat suoriksi.

Tämä itsetietoisuus alkoi kasvattaa Eerikkiä. Vähitellen hän


huomasi itsessään muutakin kaunista. Hän osasi kävelläkin suorana
ja säännöllisenä, eikä hän enää heittäytynyt veltosti nojailemaan.
Hän rupesi erityisellä huolella hoitamaan itseään, sai siistin ja
itsestään pitävän tunteen, tuli säännölliseksi ja tahtoi käyttäytyä kuin
aikamies. Hän ei ollut mielestään enää mikään lapsi, olihan hän jo
yhtä pitkä kuin vanhin konttoristi, joka oli pienikasvuinen mies. Hän
alkoi halveksia entisiä tovereitaan, ei lähtenyt enää heidän
matkaansa eikä ollut heitä näkevinäänkään. Pojat sanoivat häntä
sen tähden ylpeäksi, haukkuivat jos miksi ja kokoontuivat joukolla
kivittämään häntä, kun hän iltasella tuli konttoorilta.

Kerran sanoi neiti hänelle:


— Se on oikein, että Eerikki on tullut niin siistiksi ja visuksi.
Nythän Eerikistä mies tulee.

— Ja minä olen heittänyt tupakan poltonkin pois, sanoi siihen


Eerikki.
Hän oli jo kauvan odottanut otollista tilaisuutta ilmoittaaksen tämän.

— Sehän on myös hyvä. Nyt minä rupean oikein pitämään sinusta.

Eerikki sai uutta intoa. Erästä nuorta kirjanpitäjää, joka oli erittäin
säännöllinen ja huolellisesti puettu mies, rupesi hän pitämään
esikuvanaan. Hän harjoittautui tekemään saman laisia liikkeitä kuin
hänkin, ja varsinkin hänen kauniit kumarrukset hän otti mieleensä.
Eerikki oli hyvin tarkkana ja säästöillään hän aina osti itselleen lisää
kapineita, jotka häntä lähentäisivät tuota ihannetta. Hänellä oli
kiiltävä kuminen pystykaulus, hän hankki loistavia kravatteja,
kuitenkin aina hänelle sopimattomia, ja eräänä päivänä oli hänellä
käsissään kankeat kumiset kalvokkaat, joita hän kuitenkin ensimältä
sormillaan työnsi nutun hihoihin piiloon. Pieni peili ja kampa hänellä
oli aina taskussa. Melkein kaikki loma-ajat hän katseli itseään
peilistä, siisteili ja laitteli. Toisin ajoin hän luki satukirjoja ja
rakkaushistorioita. Hänellä oli alituisena hyräilylauluna, konttoorilla
ajatuksissa ja kadulla puoliäänessä: "Oisko pursi ja punapurjeet,
millä mennä merten taa —"

Ne olivat Eerikille onnen hetkiä, kun hän sai kadulla tervehtiä


neitiä. Hän huiskautti hattuaan etäälle sivulle niin kuin tottuneimmat
kavaljeerit. Jälestä päin yksinäisyydessä hän kertoi nämä
tervehdykset ja koetti arvata, miltä hän vastaan tullessa oli neidistä
näyttänyt.
Kauppaneuvos, joka oli palannut pitemmältä matkalta, hämmästyi
nähdessään Eerikin.

— Oletpas sinä tullut hienoksi! Uskaltaako sinua enää lähettää


pikku asioille? No, no, elä pahastu, onhan sinullakin oikeus pitää
itsestäsi, ja konttoorin arvoahan se kohottaa, kun sillä on niin komea
juoksupoika!

Eerikin mielestä neiti loi häneen yhä enemmän huomiota, ja hän


alkoi vähitellen tunteissaan selvitä ja kuvitella, että hän rakastaa
neitiä ja neiti häntä. Neiti oli sanonut häntä kauniiksi ja osoitti hänelle
erinomaista ystävyyttä ja huomiota, niin että se oli aivan varma, että
neiti häntä rakasti. Eerikki kuvitteli, mitenkä he kerran kohtaavat
toisensa kauppaneuvoksen puutarhassa, neiti antaa hänelle paljo
rahoja ja hän matkustaa kauvas sinne ulkomaille, missä neiti on
käynyt. Neiti tulee myös sinne, he menevät siellä naimisiin ja
palaavat sitte tänne rikkaina ja ylhäisinä.

Hän odotti, että neiti antaisi merkin. Mutta neiti ei näyttänyt olevan
kiireinen.

Eerikki oli ruvennut vapaaehtoiseen palokuntaan lipun kantajaksi.


Hän oli myös palokunnan lauluseurassa. Laulajat pitivät kaupungilla
yölaulajaisia vuorotellen toistensa naisille. Eerikki toimitti heidät
laulamaan kauppaneuvoksen neidille, vaikka hän neidin akkunan
alla selitti heille pitävänsä laulajaisia kauppaneuvoksen
talousneidille.

Aamulla sai Eerikki neidiltä kiitokset, joita hän oli suurella


jännityksellä odottanut.
— Eerikkikö se minulle serenaadin toimitti? kysyi neiti, joka oli
äänestä tuntenut Eerikin.

Eerikki oli hirveän punaisena ja vastasi:

— Niin. Eihän neiti tykänne pahaa?

— En toki. Kiitoksia vaan!

Mutta Eerikin onnellista tunnetta rikkoi eräs asia. Neiti oli


säännöllisesti lähettänyt kirjeitä eräälle herralle johonkin etäiseen
kaupunkiin, ja Eerikki sai kerran kirjettä postiin viedessään luulon,
että tuo herra mahtoi olla neidin sulhanen. Näitä kirjeitä hän nyt
käänteli ja katseli epäluuloisesti ja hyvin vastahakoisesti hän pudotti
ne postilaatikkoon.

Kerran kun hän tunsi kirjeessä olevan valokuvan, avasi hän sen.
Kirjeestä hän ei mitään ymmärtänyt, kun se oli vieraskielinen, vaan
valokuva oli neidin. Eerikki vapisi pelonalaisesta liikutuksesta
katsellessaan kuvaa. Neiti oli kuvassa niin ihana. Hän painoi kuvaa
suutaan vasten, että märkä sija tuli siihen, painoi moneen kertaan.
Hän ei kuitenkaan tahtonut varastaa kuvaa eikä kirjettä. Hän pani ne
uuteen kuoreen ja kirjoitti osoitteen. Vaan kirjoitus tuli niin törkeän
huonoa, ettei hän uskaltanut sitä lähettää. Hän poltti kirjeen ja kätki
kuvan tarkimpaan talteen, josta sitä useasti katseli.

— Tulipaloa, jossa hän pelastaisi neidin, kuvitteli Eerikki


vilkkaassa mielessään usein ja elävästi. Jos syntyisi talossa tulipalo!
Kun tuli riehuisi viereisissä huoneissa, kiipeisi hän rohkeasti
sievässä palokuntalaispaidassaan neidin makuukammarin
akkunaan, koputtaisi ja kuiskaisi: — "Rakas neiti, minä tulin teitä
pelastamaan tulen keskeltä!" — Neiti pyörtyisi, vaan hän särkisi
ikkunan, ottaisi hänet syliinsä ja kantaisi tuon valkeahuntuisen
olennon pihan puolelle puutarhaan, jossa virottelisi hänet. Neiti
avaisi silmänsä, tarttuisi hänen käteensä ja kuiskaisi: — "Kulta
Eerikkini! Sinä olet pelastanut minut kuolemasta ja siitä edestä saat
sinä minut omaksesi." — Siitä hetkestä alkaen olisi hän neidin
sulhanen, ylhäinen ja rikas.

Mutta kauppaneuvoksen talo ei syttynyt tuleen, ja kun alettiin


puhua, että neiti menee kohta naimisiin, tuli Eerikki onnettomaksi.
Kun neidin sulhanen tuli kauppaneuvokselle vierailemaan, oli hän
hyvin synkkämielisenä ja karttoi nähdä neitiä, ja tuota herraa, jota
sanottiin neidin sulhaseksi, hän ei suvainnut ollenkaan, häntä hän
suorastaan vihasi ja vainosi. Vaan tuo herra meni pian pois.

Viimein neitiä kuulutettiin.

Eerikki oli aivan toivotonna. Hän laihtui ja tuli surumielisen


näköiseksi. Se oli vaikein asia, ettei neiti varmaankaan tiennyt,
kuinka syvästi hän häntä rakasti, kuinka hän kärsi. Hän oli monasti
päättänyt käydessään neidin luona kammarissa tarttua neidin
käteen, notkistaa polvensa ja sanoa:

— Neiti, minä rakastan teitä, minä jumaloitsen teitä! Minä en voi


elää, jos en saa teitä!

Hän oli tämän tempun harjoitellut monta kertaa, vaan ei saanut


koskaan rohkeutta.

Monena iltana tuskissaan myöhään valvottuaan, kun neidin


hääpäivä läheni ja läheni, iski Eerikin päähän uusi ajatus. Se kyllä oli
kauheata, vaan se tuli hänen mieleensä ja vaivasi häntä.
Tulipalo kauppaneuvoksen talossa on hänen saatava aikaan!

Se ensin häntä kauhistutti, vaan toiselta puolen tuli rauhoittavia


asianhaaroja. Kauppaneuvoksen talo on varmaankin kalliisti
vakuutettu ja palokunnat ehtivät sammuttamaan, ettei talo paljon
ennätä palaa. Viisi päivää ennen hääpäivää lähti Eerikki eräänä
iltana kotoaan, sanoen menevänsä lauluharjoitukseen, jossa hän
luultavasti viipyy myöhään. Palokuntalaispaitansa ja hattunsa hän
pani salaa povelleen ja muutti ne päälleen ulkohuoneessa.
Halkoliiteristä hän otti tuohia taskunsa täyteen.

Lokakuun ilta oli myterä. Hän meni rannalle istumaan ja


odottamaan yötä. Siinä hän vielä kuvitteli, kuinka kaikki tulee
käymään. Neiti ottaakin hänet ja he menevät yhdessä kauvas,
kauvas tuonne selkien ja vuorien ja merien taa. Heillä on paljo rahaa
ja he ovat ylhäisiä. Ja hän hyräili laulua:

"Oisko pursi ja punapurjeet,


Millä mennä merten taa;
Tuolta tuottaisin kullalleni
Ko'on kultaa ja hopeaa."

Kun kirkon kello löi 12, läksi hän kauppaneuvoksen talolle päin,
verkalleen ja varovasti. Hän oli täydessä palokuntalaispuvussa,
jonka tähden hän vältti ihmisiä. Hän pääsi onnellisesti portin alaitse
kauppaneuvoksen talon pihaan. Kaikki oli valmiiksi ajateltu.
Makasiinin kupeelta hän otti kuivan tyhjän laatikon, heitti siihen
tuohensa ja vei sen sitte suurten rappusten vierelle.

Sytytettyään laatikon, meni Eerikki pihan perille pimeään


odottamaan. Sieltä hän katseli, mitenkä tuli hulmusi laatikon sisästä,
ja kohta oli koko laatikko iloisessa tulessa. Vaan tuli ei ollut herkkä
tarttumaan rappusiin, niin kuin Eerikki oli odottanut, josta hän alkoi
tulla huolelliseksi. Vasta kun laatikko oli melkein pohjilleen palanut,
syttyi rappusten kaidepuu, josta tuli alkoi virkeästi levitä verannalle.
Rappuset olivat rakennuksen suojassa, niin ettei palovartija
kirkontornissa huomannut mitään.

Nyt otti Eerikki kevyet portaat, ryömi niiden kanssa portin alaitse
kadulle, pystytti tikapuut neidin akkunan alle, nousi akkunaan ja
sydän lyöden koko miestä horjuttaen koputti hän kovasti akkunaan.

Sisästä kuului kimakka parkaisu ja sen jälkeen ovien avaamista.

Eerikki huusi:

— Tulipalo, tulipalo! Minä tulin pelastamaan neitiä!

Mutta neitiä ei kuulunut. Sen sijaan tuli kauppaneuvos kohta


akkunaan, veti verhon syrjään ja nähtyään palokuntalaisen
akkunaan jyskyttämässä, kysyi:

— Mikä hätänä?

— Tulipalo, tulipalo! Minä tulin neitiä pelastamaan! huusi


silmittömäksi innostunut Eerikki.

— Missä on tuli?

— Koko pihan puoli palaa! Minä tulin neitiä pelastamaan!

Samassa tuli vanha palvelija kauppaneuvokselle ilmoittamaan,


että pihan puolella on vähän tulta, jota jo on kaksi renkiä
sammuttamassa ja saavat sen kohta sammumaan.

Mutta Eerikki löi ja löi ja huusi:


— Tulipalo, tulipalo! Minä tulin neitiä pelastamaan!

Kauppaneuvos avasi ikkunan ja sanoi:

— Onko se Eerikki? Elähän nyt noin säikytä. Palo saadaan


sammumaan.

— Mutta minä tulin neitiä pelastamaan. Muualta ei pääse kuin


tästä akkunasta, toimitti Eerikki henki kurkussa.

Kauppaneuvos juoksi pihan puolelle katsomaan. Tuli saatiin heti


sammumaan.

Mutta kadun puolelta kuului neidin akkunaan ankaraa jyskytystä.


Kauppaneuvos tuli taas akkunaan ja huusi:

— Tuli on jo sammutettu, hyvä poika!

— Onkos neiti pelastettu? Minä pelastan neidin tästä akkunasta,


muualta ei pääse.

— Eerikki oli kauhean kiihoittunut.

— Oletko sinä hullu, poika, kun tuli on jo sammutettu! huusi


kauppaneuvos minkä jaksoi.

Nyt vasta Eerikki selvisi — ja hänestä oli kaikki menetetty.

Kauppaneuvos vielä nuhteli häntä kovin sanoin, kun oli tullut sillä
lailla säikyttämään neitiä turhanpäiten.

Eerikki kohta katosi koko paikalta, ja kauppaneuvos palvelijoinecn


jäi tutkimaan tulipalon syytä. Toinen rengeistä kertoi heränneensä
siitä, kun ikkunaan kävi kirkas loimo, hän herätti toisen, ja kohta
olivat he korvojen kanssa vesittämässä tulta. Sammuttamaan
mennessään näkivät he jonkun tikapuut olalla kiirehtivän pihasta
kadulle. Kauppaneuvos, jolle neiti oli ennen kertonut jotakin
Eerikistä, alkoi arvailla koko tuon lapsellisen tulipalon syytä ja kaipaili
Eerikkiä. Mutta Eerikkiä ei näkynyt.

Eerikille oli vaiennut koko huono menestyksensä ja hän oli


kauheasti ruvennut pelkäämään rangaistusta. Hän juoksi
tulipalopaikalta alas rantaan kotiinsa päin. Mutta pelkonsa ja
onnettomuuden tuntonsa lisääntyivät joka askeleella, hän luuli
poliisien ja ruununmiesten ajavan häntä takaa, ottaakseen hänet
kiinni ja raudoissa viedäkseen linnaan. Hän kääntyi satamalle, juoksi
äyräälle ja oli vähällä pudota mustaan järveen, teki taas käännöksen
ja juoksi rantakatua kaupungin laidassa olevan oluttehtaan pihaan,
jossa pakkautui suurten halkopinojen väliin. Siellä hän vietti koko sen
yön — kylmän yön — ja seuraavan päivän pelossa ja vavistuksessa.
Seuraavana yönä lähti hän, nälän ja kylmän ajamana, liikkeelle ja
meni kotipihaansa. Hän toivoi saavansa ruokaa kotonsa
ruokahuoneesta, vaan se oli niin lujasti lukossa, ettei hän sinne
päässytkään. Vaan myllypihassa oli heidän kuoppa, jonne hän pääsi,
ja sieltä hän otti nauriita taskunsa täyteen. Sitte hän työntäytyi piiloon
kotinsa asuinrakennuksen alle, jossa oli sammalia. Nauriita hän söi
minkä saattoi, vaan ne tuottivat suuhun vetisen tuiman.

Sammalissa hän vietti seuraavan yön, joka oli jo liiaksi kylmä.


Kääriydyttyään sykkyrään kuin koiranpenikka, sai hän kuitenkin
sammalissa vähän lämmintä ja nukkui. Aamupuoleen yötä hän
heräsi ja kuuli, miten seinissä ja kivijaloissa pakkanen kitisi. Hänen
päätään palelsi kylmässä palokuntalaishatussa, ja kun hän liikahti
asemiltaan, tunsi hän oikein, kuinka hänellä oli kylmä. Ainoat
nauriinsa olivat paleltuneet ja hän itse oli paleltumassa.
Jo teki mieli mennä huoneeseen, vaan ei uskaltanut, ainakaan
isän kotona ollessa. Täytyi kärsiä, vaikka palelsi niin turkasesti.
Päätä jo jomotti ja jalkoja tuntui jäätävän. Ihan varmaan oli jo kaksi
oikean jalan varvasta jäätynyt yhteen, sillä niitä hän ei enää voinut
liikuttaa jäisessä kengässä. Hän ei uskaltanut vetää kenkää jalasta,
kun pelkäsi siten paleltuvan koko jalan.

Aamulla, kun isä oli mennyt myllylle, kömpi Eerikki


palokuntalaispuvussaan huoneeseen, säälittävän surkean
näköisenä. Tehdäkseen äitinsä armahtavaisemmaksi, ilmoitti hän
ensi sanoikseen, että hänen päänsä ja jalkansa olivat paleltuneet.

Äiti hädissään riisui pojan, tunnusteli ja huomasikin yhden varpaan


paleltuneeksi. Hän hauteli jalkaa lumella ja viinalla, samalla
tiedustellen Eerikin retkiä, ja sadatteli. — "Kyllä kai ne lopuksi sinut
vievät sinne, josta et pääse polttamaan ihmisten taloja!" peloitteli
hän.

Eerikki kääntyi sairaaksi. Hän sai helpon kuumeen, vaan hän


hyvin mielellään sairasti. Äidissä ja isässäkin hän siten herätti sääliä,
ja muutenkin oli vuoteessa nurkassa makaaminen niin onnettoman
turvallista.

Sillä aikaa ehdittiin kauppaneuvoksen neiti vihkiä ja viedä


häämatkalle ulkomaille.

Eerikki makasi vaan yhä onnetonna. Mutta kun kauppaneuvos itse


kävi häntä katsomassa ja vakuutti, ettei hänelle tulipalosta tule
mitään, tuli hän hyvin iloiseksi ja parani pikemmin kuin oli luultukaan.

Kun hän sitte parattuaan tuli konttoorille, oli hän sekaisin iloisen ja
nolon näköinen, — niin kuin kylmästä sateesta korjattu koiran pentu.
Junnu Juntunen.

Junnu Juntunen oli kauppias Helisevässä kartanonmiehenä, jonka


toimena oli pihan ja katuosien puhtaana pito, ulkohuoneitten
tyhjentäminen, halon hakkuu talouden tarpeeksi ja kartanon silmällä
pito. Näistä toimistaan oli hänellä palkkaa vapaa asunto pirtissä
pihan pohjassa ynnä 25 markkaa rahaa kuussa omassa ruuassaan.

Hänen ijästään ei mahtanut kellään olla oikeata selvää, sillä hän


oli ollut saman näköinen herra tiesi kuinka kauvan: ruskeaksi
päivettyneet kasvot, vaalean keltainen tukka, joka peitti korvat
kokonaan, likaisen väristä harvaa partaa korvuksilla — ja hänen
suuret, paksut kätensä olivat alati mustat tervasta, jota hän useasti
tuli käsittelemään pihassa. Naapuritalon renki, nuori mies, kertoi
käyneensä yhtaikaa rippikoulua Junnun kanssa ja olleen hänen jo
silloin saman näköisen jurilaan: sillä kertaa ei Junnu ollut päässyt
ripille, vaikka oli ollut jo toista kertaa yrittämässä ja pappi oli kutsunut
häntä "vanhaksi mieheksi". Milloin lie päässyt ripilleen vai eikö lie
päässyt ensinkään. Mutta joka katsoi tarkemmin hänen
hyvänsuopaisiin harmaihin silmiinsä, näki niissä jotakin nuorta ja
lapsellista. Niissä ainoastaan todellinen ikä ilmoitti itsensä ja vielä
enemmän: niissä näkyi se ikä, missä hän ymmärryksensä puolesta
vielä eli. Hän voi olla korkeintaan 33 vuoden ikäinen, vaan silmistään
näkyi vielä aikainen nuoruus.

Junnua pidettiinkin vähän yksinkertaisena, vaan suorana ja


sävyisänä miehenä, joka tunnollisella tarkkuudella täytti toimensa.
Hän oli onnellinen mielestään, kun hänellä oli vakituinen paikka,
jossa hänellä oli pysyväinen sija kuin virkamiehellä ja jossa hän söi
suruttoman leivän. Kauppias Helisevä oli vielä luvannut korottaa
hänen palkkansa 30 markkaan niin pian kuin hän menee naimisiin.
Toimestaan hänellä taas ei ollut niinkään pienet ajatukset: hänellä oli
m.m. valta kieltää älytöntä maalaista sitomasta hevostaan puutarhan
heikkoon aitaan. Tämmöistä järjestystä hän piti pihassa suurella
oman arvonsa tunnolla, vaan kuitenkin kaikella siivoudella, niin että
ani harvat loukkautuivat ja ne ilman syytä. Oli aina joku nenäkäs
maalais-isäntä, joka katsoi häneen pilkallisesti ja kysyi: — Mikä
isäntä ja komentelija sinä täällä olet? — Minä olen vaan täällä
semmoinen vahtimies, ja jos ette usko, niin kysykää kauppiaalta,
vastasi aina Junnu tyynesti, vaan mielestään pisteliäästi hänkin.

Se kuitenkin katkeroitti Junnun muuten niin tyyntä ja rauhallista


elämää, että hänellä oli niin paljo "vihamiehiä", niin kuin hän heitä
nimitti. Ne olivat niitä, jotka pilkkasivat ja kiusasivat häntä ja jos
jollakin tavalla pahoittivat hänen mieltään. Niitä olivat ensiksikin
kaikki poikanulikat, joita hän sen vuoksi vihasi ja vainosi, vaikka hän
sanoikin aina, että ymmärtämättömyydessään ne sitä tekevät. Pojat
keksivät hänelle haukkumanimenkin, "isäntä", joka sitte tuli hänelle
yleiseksi nimeksi, — vaan kauppias itse häntä kuitenkin aina nimitti
Junnuksi. Oikeastaan ei isännän nimi Junnua pahoittanut, sillä hän
piti itseään tavallaan isäntänä, jolla oli valta kartanolla, vaan ei hän
ollut tästä nimestään sen kiitollisempi pojille. Kerran oli joku
heittiöpoika varastanut erään maalaisen kärryistä, ja kun Junnu piti
itsensä vastuunalaisena kaikesta, mitä pihassa tapahtui, ei hän sen
koommin suvainnut poikasia kartanolle, haukkuivatpa ne häntä
vaikka kuinka. Paitse pikku poikia tahtoivat aikaihmisetkin häntä
pilkata ja narrata, vaan hän kärsi kaikki tyynesti, vaikka hyvästi
ymmärsikin, että ne pitivät häntä itseään tyhmempänä, ja lohdutti
itseään sillä, että oman talon väki kuitenkin piti hänestä, vaikka nekin
hänen kanssaan tahtoivat leikitellä. Erittäinkin olivat piijat siihen
mestareita. He tarjoilivat itseään Junnulle emännäksi, kun Junnu
kerran oli isäntä, ja saattoivatkin useasti hänen päänsä pyörälle
muistuttamalla tuosta 5 markan palkan koroituksesta. Rengit
kirjoittelivat hänelle piikojen nimessä rakkauden kirjeitä, joita hän
aina luetutti jollakin kirjoituksen taitavalla ja uskoi niitä, vaan ei hän
kuitenkaan ruvennut koskaan niihin vastaamaan, tuumaten, että
hänenhän sitä pitää kosia; ei se sovi, että tytöt pojille kirjoittelevat.

Mutta hänen kosimisestaan ei tullut mitään. Hän tosin ajatteli


naimista, vaan hän oli tehnyt jonkun laisen vaistomaisen päätöksen,
että oman talon palvelijoista hänen pitää vaimo saada; hän ei
milloinkaan käynyt kylässä. Joka kerran, kun uusi piika tuli taloon,
tarkasteli hän häntä ja hyvässä sydämessään aina hyväksyi
morsiamekseen, vaan hänellä oli eräs toinen vaisto, joka pelasti
hänet turhista kosimisista. Hän nimittäin aina odotti, kosiiko tuo tyttö
itse häntä; jos tyttö kosi itse, heitti hän hänet ajatuksistaan, sillä
hänen mielestään ei tyttö silloin totta tarkoita, kun hän itse kosii. Niin
hän jäi aina odottamaan seuraavaa köyriä, jolloin aina vaihtui joku
palvelija suuressa talossa, tai jos ei vaihtunut, odotti hän tyynesti
useampiakin vuosia.

Mutta tulipa sitte Junnulle sielun risti. Puotiin tuli uusi


kauppapalvelija, jonka suurin huvitus oli kiusata Junnua. Milloin hän
vaan avaimet kädessä kulki pihan poikki makasiiniin, oli hänellä aina
soimaussana Junnulle, jolle sitte nauroivat kaikki, ketä pihalla sattui
olemaan. Puotilaisella oli monta muuta ilkeätä kujetta. Kerran antoi
tuo nuori herra Junnulle sikaarin, joka polttaessa räjähti ja oli polttaa
Junnun kasvot, kun sen sisään oli pantu ruutia. Sille sitte nauroi koko
puodin täyteinen joukko. Tämän jälkeen Junnu vältti niin paljo kuin
mahdollista tuota häijyä nuorta herraa, vaan kiusanhengestään hän
ei siltä päässyt. Puotilainen laittoi kumipyssyn ja ammuskeli Junnua
herneillä ja hauleilla. Junnu ei osannut aavistaakaan, milloin hän sai
luodin niskaansa tai poskeensa jostakin ikkunasta tai ovesta, jossa
puotilainen oli häntä vahtinut. Tämä suututti Junnua kaikkein enin, ja
vihdoin viimeinkin hän meni kauppiaalle siitä valittamaan.

— Minusta on hyvin vaikeata valittaa, sanoi hän, vaan nuori herra


Torkkeli on minua kohtaan niin paha, ettei sitä jaksa kärsiä. Ja hän
kertoi, mitä ilkeitä kujeita Torkkeli oli hänelle tehnyt. Se voi kyllä olla
leikkiä hänen puoleltaan, vaan se on liijemmoista leikkiä ja se on
tyhmää leikkiä, saan minä sanoa.

Kauppias rauhoitti Junnua ja leikillään lupasi antaa selkään


Torkkelille, vaan ei muistanutkaan sanoa Torkkelille mitään tai piti
asian kovin vähäpätöisenä, sillä kaikkihan Junnua narrasivat.

Kun Torkkeli ei lakannut sopimatonta kiusaansa Junnulle


tekemästä, meni Junnu uudestaan kauppiaan puheille, tällä kertaa
raskaammalla mielellä kuin ensi kerralla.

— Nuori herra Torkkeli ei ole tainnut saadakaan sitä, mitä herra


kauppias sille lupasi antaa, kun se yhä vaan minua kiusaa. Herra
kauppias saa uskoa, etten minä turhasta tule valittamaan, vaan nuori
herra Torkkeli on todellakin hyvin hävitön minua kohtaan.

Kauppias taas rauhoitti Junnua ja lupasi kurittaa Torkkelia. Tällä


kertaa hän nuhtelikin Torkkelia, varoittaen häntä että antaisi Junnulle
rauhan.

Mutta Torkkelikos loukkautui siitä, että hänen päälleen tuo Junnun


retale oli kaivannut, kielsi mitään tehneensä Junnulle ja syytti että
päin vastoin oli Junnu hänelle sanonut loukkaavia sanoja.

— No, no, pitikö tuosta nyt noin suuttua.


— Vaan mitäs semmoinen Junnu tulee minun päälleni
kaipaamaan, ja kauppias semmoista hullua uskoo, puhisi Torkkeli
vihoissaan.

Kauppias jätti asian silleen, vaan Torkkeli päätti kostaa. Kun hän
ensi kerran tämän jälkeen tapasi Junnun, joka oli makasiinien välistä
solaa siivoamassa, potkasi hän takaa päin hänet suulleen likaan ja
kysyi:

— Vieläkö sinä menet kaipaamaan minun päälleni?

— Kylläpä olisi syytä käydä vieläkin, vastasi Junnu, nousten ylös.

— Vieläkö sinä tolitat siinä! sanoi Torkkeli ja löi häntä


avainkimpulla päätä vasten.

Eräs talonpoika, jolle Torkkeli oli menossa suoloja antamaan,


nauraa hohotti puoliväkinäistä naurua sukkelalle puotilaiselle,
sanoipa vielä jonkun pilkkasanankin Junnulle.

Suolamakasiinissa kertoi Torkkeli talonpojalle, että tuo Junnu oli


vähämielinen löyhkä, jota kaikki narrasivat, ja että se oli uskaltanut
käydä kantelemassa kauppiaalle hänen päälleen.

— Usko hullua sitte! sanoi mies ja kolautti lapiolla suolanelikon


kylkeen, että suolat vajuisivat tiiviiseen.

— Ei se toki ole kauppias sitä uskonutkaan, vaan että tuommoinen


hullu menee minun päälleni kaipaamaan —!

— Annattakaa sitä jollakin selkään oikein! Ryyppypalkallahan ne


jätkät sen selän pehmittävät, neuvoi suolan ostaja ja kolautti yhä
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

textbookfull.com

You might also like