SOLUTIONS
, SOLUTION MANUAL
NUMERICAL AND ANALYTICAL METHODS WITH
MATLAB
Table of Contents
Page
Chapter 2 1
Chapter 3 46
Chapter 4 58
Chapter 5 98
Chapter 6 107
Chapter 7 176
Chapter 8 180
Chapter 9 188
Chapter 10 214
Chapter 11 271
Chapter 12 303
Chapter 13 309
Chapter 14 339
@Seismicisolation
@Seismicisolation
, CHAPTER 2
P2.1. Taylor series expansion of f (x ) about x = 0 is:
f ' ' (0) 2 f ' ' ' (0) 3 f 1V 4
f ( x ) = f ( 0 ) + f ' ( 0) x + x + x + x + ...
2! 3! 4!
For f ( x ) = cos ( x ) , f (0) = 1,
f ′( x ) = − sin( x ), f ' (0) = 0,
f ' ' ( x ) = − cos( x ), f ' ' (0) = − 1,
f ' ' ' ( x ) = + sin( x ), f ' ' ' (0) = 0,
f 1V ( x ) = + cos( x ), f 1V (0) = 1
We can see that
x2 x4 x6 x8
cos( x ) = 1 − + − + − + − + ...
2 ! 4 ! 6 ! 8!
and that
x2
term ( k) = − term ( k − 1) ×
2 k (2 k − 1)
The following program evaluates cos( x ) by both an arithmetic statement and by the
above series for - x in step of 0.1 π .
% cosf.m
% This program evaluates cos(x) by both arithmetic statement and by
% series for - x in steps of 0.1
clear; clc;
xi=-pi; dx=0.1*pi;
for j=1:21
x(j)=xi+(j-1)*dx;
cos_arith(j)= cos(x(j));
@Seismicisolation
1
@Seismicisolation
, sum=1.0; term=1.0;
for k=1:50
den=2*k*(2*k-1);
term=-term*x(j)^2/den;
sum=sum+term;
test=abs(sum*1.0e-6);
if abs(term) <= test;
break;
end
end
cos_ser(j)=sum;
nterms(j)=k;
end
fo=fopen('output.dat','w');
fprintf(fo,'x cos(x) cos (x) terms in \n');
fprintf(fo,' by arith stm by series the series \n');
fprintf(fo,'=====================================================\n');
for j=1:21
fprintf(fo,'%10.5f %10.5f %10.5f %3i \n',...
x(j),cos_arith(j),cos_ser(j),nterms(j));
fprintf(fo,'-------------------------------------------------\n');
end
fclose(fo);
plot(x,cos_arith),xlabel('x'),ylabel('cos(x)'),
title('cos(x) vs. x'),grid;
@Seismicisolation
2
@Seismicisolation