%
for comment lines 19
for H1 and help text lines 18
&
37
@ 155
|
37
~
37
~=
36
accuracy of calculations 29
adding
cells to cell arrays 142
fields to structure arrays 131
aggregation 219
AND
operator, rules for evaluating 38
ans 29
answer, assigned to ans
29
arguments
checking number of 22
defined for function 17
order
varargin, varargout 24, 26 <1> <2>
passing 22
passing by reference 22
passing by value 22
passing variable number 24
arithmetic expressions 34
arithmetic operators
overloading 211
using 34
arrays
cell array of strings 94
character 91
dimensions
inverse permutation 115
indexing 59
multidimensional 105
numeric
converting to cell array 151
of strings 92
storage 59
assignment statements
building structure arrays with 126
local and global variables 27
automatic scalar expansion 35
base (numeric), converting 101
base date 71
base number conversion 90
binary from decimal conversion 101
blanks
finding in string arrays 98
removing from strings 93
C++ and MATLAB OOP 190
caching
MATLAB directory 14
MATLAB/toolbox directory 14
calling context 22
calling MATLAB functions
compiling for later use 21
how MATLAB searches for functions 20
storing as pseudocode 21
canonical class 191
case
45
case conversion 89
cat
104, 109, 120 <1> <2> <3>
catch
for error handling 67
cell
indexing 141
accessing a subset of cells 145
cell arrays 140
accessing a subset of cells 145
accessing data 144
applying functions to 148
cell indexing 141
concatenating 143
content indexing 142
converting to numeric array 151
creating 141
using assignments 141
with cells
function 144
with curly braces 143
deleting cells 145
deleting dimensions 145
displaying 142
expanding 142
flat 150
indexing 142
multidimensional 120
nested 150
building with the cells
function 150
indexing 151
of strings 94
comparing strings 97
of structures 152
organizing data 148
overview 140
preallocating 81, 144 <1> <2>
replacing comma-separated list with 146
reshaping 146
visualizing 142
cell
data type 32
celldisp
142
cellplot
142
cells
building nested arrays with 150
preallocating empty arrays with 141, 144 <1> <2>
char
data type 32
character arrays 91
categorizing characters of 98
comparing 96
comparing values on cell arrays 97
concatenating 62
conversion 89, 101 <1> <2>
converting to cell arrays 94
creating 91
delimiting character 99
evaluating 62, 102 <1> <2>
finding a substring 99
functions that test 88
in cell arrays 94
operations 89
padding for equal row length 92
removing trailing blanks 93
representation 91
scalar 97
searching and replacing 99
token 99
two-dimensional 92
using relational operators on 97
characters
corresponding ASCII values 93
finding in string 98
class directories 189
class
function 193
classes 30
clearing definition 189
constructor method 192
debugging 188
designing 191
Java 32
methods required by MATLAB 191
object-oriented methods 185
overview 185
clear
21, 82 <1> <2>
colon operator 34
for multidimensional array subscripting 111
indexing a page with 117
scalar expansion with 107
to access subsets of cells 145
column vector
indexing as 59
comma to separate function arguments 17
comma-separated list
using cell arrays 146
comments in code 19
comparing
strings 96
complex conjugate transpose operator 34
computational functions
applying to cell arrays 148
applying to multidimensional arrays 116
applying to structure fields 131
in M-file 12
computer
29
computer type 29
concatenating
cell arrays 143
matrices 58
strings 62
conditional statements 22
constructor methods 192
guidelines 192
using class
in 193
containment 219
content indexing 142
to access cell contents 144
Contents.m
file 13
continue
49
conv
147
converter methods 202, 207 <1> <2>
converting
base numbers 90
cases of strings 89
dates 70
numbers 101
strings 89, 101 <1> <2>
cos
15
creating
cell array 141
multidimensional array 106
string array 92
strings 91
structure array 126
cross
116
curly braces
for cell array indexing 141, 143 <1> <2>
to build cell arrays 143
to nest cell arrays 150
data class hierarchy 186
data organization
cell arrays 148
multidimensional arrays 118
structure arrays 133
data types 30
cell 32
char
32
classes 186
double 32
single 31
sparse 32
sparse matrices 30
struct
32
uint
32
user-defined 186
UserObject
32
date
75
datenum
72, 73 <1> <2>
dates
base 71
conversions 72
formats 70
handling and converting 70
number 71
string, vector of input 73
datestr
72, 73 <1> <2>
datevec
72
deblank
93
debugging class methods 188
decimal representation
to binary 101
to hexadecimal 101
default function 169
deleting
cells from cell array 145
fields from structure arrays 131
matrix rows and columns 57
deletion operator 57
delimiter in string 99
dim
argument for cat
109
dimensions
deleting 145
permuting 114
removing singleton 113
directories
adding to path 189
class 189
Contents.m
file 13
help for 13
MATLAB
caching 14
private 53, 188 <1> <2>
disp
138
dispatch type 250
dispatching priority 20
display
method 194
examples 195
displaying
cell arrays 142
error and warning messages 68
field names for structure array 127
double data type 32
double-precision matrix 30
editor
accessing 13
for creating M-files 11, 13 <1> <2>
eig
117
element-by-element organization for structures 136
else
, elseif
43, 44 <1> <2>
empty arrays
and if
statement 45
and relational operators 37
and while
loops 47
empty matrices 65
end
method 200
eps
29
epsilon 29
equal to operator 36
error
16
errors 67
displaying 68
handling 67
eval
for error handling 67
evaluating
string containing function name 62
string containing MATLAB code 102
string containing MATLAB expression 62
examples
checking number of function arguments 22
container class 236
for
48
function 16
if
44
inheritance 220
M-file for structure array 133
polynomial class 206
script 15
switch
46
vectorization 79
while
47
exclusive OR
operator 39
execution,pausing 77
expanding
cell arrays 142
structure arrays 126
expressions
arithmetic 34
involving empty arrays 37
logical 37
most recent answer 29
overloading 203
relational 36
scalar expansion with 35
external program, running from MATLAB 78
feval
using on function handles 157, 163 <1> <2>
using on function name strings 182
fieldnames
127
fields 125, 126 <1> <2>
accessing data within 128
accessing with getfield
130
adding to structure array 131
applying functions to 131
all like-named fields 132
assigning data to 126
assigning with setfield
130
deleting from structures 131
indexing within 129
names 127
size 131
writing M-files for 132
fields
127
find
function
and subscripting 40
finding
substring within a string 99
floating-point number
largest 29
smallest 29
floating-point relative accuracy 29
flow control 43
catch
50
continue
49
else
43
elseif
43
for
48
if
43
return
50
switch
45
try
50
while
47
for
48, 151 <1> <2>
example 48
indexing 48
nested 48
syntax 48
format
date 70
fragmentation, reducing 82
func2str
description 175
example 175
function definition line 12, 17 <1> <2>
for subfunction 51
function handles 32, 155 <1> <2>
benefits of 157
constructing 161
converting from function name string 176
converting to function name string 175
effect on performance 159
error conditions 180
evaluating a nonscalar function handle 181
including path in the constructor 180
nonexistent function 180
evaluating 163
finding the binding functions 167
for subfunctions, private functions 158
maximum name length 161
operations on 175
overloading 157, 163, 172 <1> <2> <3>
overview of 156
passing 157
saving and loading 179
testing for data type 177
testing for equality 177
types
constructor 172
overloaded 172
private 174
simple 171
subfunction 173
function name string
converting from function handle 175
converting to function handle 176
function workspace 22
functions 16
applying
to multidimensional structure arrays 122
to structure contents 131
applying to cell arrays 148
arguments
passing variable number of 24
body 12, 18 <1> <2>
calling 21
calling context 22
characteristics 11
class
193
clearing from memory 21
computational, applying to structure fields 131
contents 17
converters 207
creating arrays with 108
default 169
dispatching priority 20
example 16
executing function name string 62
inferiorto
248
isa
193
logical 39
multiple output values 17
naming 19
resolution 20
nested 83
optimization 79
order of arguments
varargin, varargout 24, 26 <1> <2>
overloaded methods 170
overloading 203, 205, 213 <1> <2> <3>
primary 51
private 53
storing as pseudocode 21
subassign
199
subfunction 51
subsref
196
superiorto
248
which
252
functions
command
description 167
for constructor function handles 172
for overloaded function handles 172
for private function handles 174
for simple function handles 171
for subfunction handles 173
return fields 168
get
method 195
getfield
130
global variables 27
rules for use 28
greater than operator 36
greater than or equal to operator 36
H1 line 12, 18 <1> <2>
and help
command 12
and lookfor
command 12
help
18
and H1 line 12
help text 12
hexadecimal, converting from decimal 101
hierarchy of data classes 186
if
43
and empty arrays 45
example 44
nested 44
imaginary unit 29
indexed reference 196
indexing 54
advanced 59
cell array 141
content 142
for
loops 48
multidimensional arrays 111
nested cell arrays 151
nested structure arrays 139
structures within cell arrays 153
within structure fields 129
indices, how MATLAB calculates 61
Inf
29
inferiorto
function 248
infinity (represented in MATLAB) 29
inheritance
example class 220
multiple 218
simple 217
input
from keyboard 77
obtaining from M-file 77
integers, changing to strings 101
interactive user input 77
inverse permutation of array dimensions 115
ipermute
104, 115 <1> <2>
isa
193
using with function handles 177
isempty
37
isequal
using with function handles 177
isinf
40
isnan
40
Java and MATLAB OOP 190
lasterr
67
and error handling 67
less than operator 36
less than or equal to operator 36
load
82
function handles 179
loading objects 242
loadobj
example 244
local variables 27
logical expressions 37
and subscripting 40
logical functions 39
logical operators 37
rules for evaluation 38
lookfor
12, 18 <1> <2>
and H1 line 12
loops
for
48
while
47
MATLAB
data type classes 186
programming
functions 16
M-files 11
quick start 11
scripts 15
structures 190
version 29
matrices
accessing multiple elements 55
accessing single elements 54
advanced indexing 59
concatenating 58
deleting rows and columns 57
empty 65
expanding 56
sparse 30
matrix
as index for for
loops 48
double-precision 30
power operator 35
single-precision 30
See also matrices
mean
116
memory
allocating for variables 84
function workspace 22
management 82
Out of Memory
message 86
reducing fragmentation 82
methods 185
converters 202
determining which is called 252
display
194
end
200
get
195
invoking on objects 187
listing 215
overloaded 170
precedence 249
required by MATLAB 191
set
195
subsasgn
196
subsref
196
M-files
comments 19
contents 12
corresponding to functions 204
creating
in MATLAB directory 14
in MATLAB directory tree 14
quick start 11
creating with text editor 13
dispatching priority 20
input
keyboard 77
obtaining interactively 77
kinds 11
naming 10
operating on structures 132
optimization 79
overview 12
pausing during execution 77
primary function 51
subfunction 51
superseding existing names 52
Microsoft Windows
MATLAB use of system resources 85
mislocked
28
mlock
28
multidimensional arrays 104
applying functions 116
element-by-element functions 116
matrix functions 117
vector functions 116
cell arrays 120
computations on 116
creating 106
at the command line 106
with functions 108
with the cat
function 109
extending 107
format 110
indexing 111
avoiding ambiguity 111
with the colon operator 111
number of dimensions 110
organizing data 118
permuting dimensions 114
removing singleton dimensions 113
reshaping 112
size of 110
storage 110
structure arrays 121
applying functions 122
subscripts 105
multiple conditions for switch
46
multiple inheritance 218
multiple output values 17
munlock
28
names
function 19
structure fields 127
superseding 52
variable 27
NaN
29
nargin
22
nargout
22
ndgrid
104
ndims
104, 110 <1> <2>
nesting
cell arrays 150
for
loops 48
functions 83
if
statements 44
structures 138
newlines in string arrays 98
not equal to operator 36
NOT
operator
rules for evaluating 38
Not-a-Number 29
now
76
number of arguments 22
numbers
changing to strings 101
date 71
time 71
object-oriented programming 184
converter functions 207
features of 185
inheritance
multiple 218
simple 217
overloading 203, 205 <1> <2>
subscripting 196
overview 185
See also classes and objects
objects
accessing data in 195
as indices into objects 201
creating 186
invoking methods on 187
loading 242
overview 185
precedence 247
saving 242
offsets for indexing 61
ones
56, 108 <1> <2>
online help 18
operator precedence 40
overriding 41
operators 34
&
37
|
37
~
37
applying to cell arrays 148
applying to structure fields 131
arithmetic 34
colon 34, 107, 111, 117, 145 <1> <2> <3> <4> <5>
complex conjugate 34
deletion 57
equal to 36
greater than 36
greater than or equal to 36
less than 36
less than or equal to 36
logical 37
matrix power 35
not equal to 36
overloading 185, 203 <1> <2>
power 34
relational 36
subtraction 34
table of 204
unary minus 34
optimization 79
preallocation, array 81
vectorization 79
organizing data
cell arrays 148
multidimensional arrays 118
structure arrays 133
Out of Memory
message 86
overloading 196
arithmetic operators 211
functions 203, 205, 213 <1> <2> <3>
loadobj 243
operators 185
pie3
239
saveobj
243
pack
82
page subscripts 105
parentheses
for input arguments 17
overriding operator precedence with 41
passing arguments
by reference 22
by value 22
path
adding directories to 189
pausing during M-file execution 77
pcode
21
PCs and MATLAB use of system resources 85
percent sign (comments) 19
permute
104, 114 <1> <2>
permuting array dimensions 114
inverse 115
persistent variables 28
pi
29
pie3
function overloaded 239
plane organization for structures 135
polar
15
polynomials
example class 206
power operator 34
preallocation 81
cell array 81, 144 <1> <2>
structure array 82
precedence
object 247
operator 40
overriding 41
primary function 51
private directories 53
private directory
in dispatching priority 20
private functions 53
function handles to 158, 174 <1> <2>
precedence of 251
private methods 188
programming, object-oriented 184
programs
running external 78
pseudocode 21
quit
82
randn
108
realmax
29
realmin
29
reducing memory fragmentation 82
reference, subscripted 196
relational operators
empty arrays 37
strings 97
removing
cells from cell array 145
fields from structure arrays 131
singleton dimensions 113
replacing substring within string 99
repmap
108
reshape
112, 146 <1> <2>
reshaping
cell arrays 146
multidimensional arrays 112
return
50
rmfield
131
save
82
function handles 179
saveobj
example 244
saving
objects 242
scalar
and relational operators 97
expansion 35
string 97
scripts 11, 15 <1> <2>
characteristics 11
example 15
executing 15
search path 20
M-files on 51
set
method 195
setfield
130
shell escape functions 78
shiftdim
104
simple inheritance 217
sin
15, 116 <1> <2>
single data type 31
single-precision matrix 30
size
structure arrays 131
structure fields 131
size
110, 131 <1> <2>
smallest value system can represent 29
sparse data type 32
sparse matrix 30
special values 29
square brackets
for output arguments 17
squeeze
104, 113, 117 <1> <2> <3>
statements
conditional 22
storage
array 59
str2func
description 176
example 177
strcmp
96
strings
See also character arrays
struct
data type 32
structs
126, 127, 138 <1> <2> <3>
structure arrays 125
accessing data 128, 130 <1> <2>
adding fields 131
applying functions to 131
building 126
using structs
127
data organization 133
deleting fields 131
element-by-element organization 136
expanding 126, 127 <1> <2>
fields 125
assigning data to 126
assigning using setfield
130
indexing
nested structures 139
within fields 129
multidimensional 121
applying functions 122
nesting 138
obtaining field names 127
organizing data 133
example 137
overview 125
plane organization 135
preallocation 82
size 131
subarrays,accessing 129
subscripting 126
used with classes 190
within cell arrays 152
writing M-files for 132
example 133
structures
See also structure arrays
subassign
199
subfunctions 51
accessing 51
creating 51
debugging 52
definition line 51
function handles to 158, 173 <1> <2>
in dispatching priority 20
precedence of 251
subref
196
subsasgn
196
subscripted assignment 199
subscripting 54
how MATLAB calculates indices 61
multidimensional arrays 105
overloading 196
page 105
structure arrays 126
with logical expression 40
with the find
function 40
subsref
method 196
substring within a string 99
subtraction operator 34
sum
116
superiorto
function 248
superseding existing M-files names 52
switch
45
case groupings 45
example 46
multiple conditions 46
tabs in string arrays 98
time
numbers 71
token in string 99
tolerance 29
transpose
115
trigonometric functions 15, 116 <1> <2>
uint
data type 32
unary minus operator 34
user classes, designing 191
user input
obtaining interactively 77
UserObject
data type 32
value
largest system can represent 29
varargin
25, 148 <1> <2>
in argument list 26
unpacking contents 25
varargout
25
in argument list 26
packing contents 25
variables
deleting
and memory use 83
dispatching priority 20
global 27
rules for use 28
local 27
memory usage 84
naming 27
persistent 28
replacing list with a cell array 146
storage in memory 83
vector
of dates 73
preallocation 81
vectorization 79
example 79
replacing for
vectorization 43
version
29
version, obtaining 29
visualizing
cell array 142
warnings 67
displaying 68
which
used with methods 252
while
47
empty arrays 47
example 47
syntax 47
white space
finding in string 98
whos
110
interpreting memory use 83
Windows
MATLAB use of system resources 85
workspace
context 22
of individual functions 22
xor
39
zeros
108