(*^
::[ Information =
"This is a Mathematica Notebook file. It contains ASCII text, and can be
transferred by email, ftp, or other text-file transfer utility. It should
be read or edited using a copy of Mathematica or MathReader. If you
received this as email, use your mail application or copy/paste to save
everything from the line containing (*^ down to the line containing ^*)
into a plain text file. On some systems you may have to give the file a
name ending with ".ma" to allow Mathematica to recognize it as a Notebook.
The line below identifies what version of Mathematica created this file,
but it can be opened using any other version as well.";
FrontEndVersion = "Macintosh Mathematica Notebook Front End Version 2.2";
MacintoshStandardFontEncoding;
fontset = title, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeTitle, center, M7, bold, e8, 24, "Times";
fontset = subtitle, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeTitle, center, M7, bold, e6, 18, "Times";
fontset = subsubtitle, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeTitle, center, M7, italic, e6, 14, "Times";
fontset = section, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, grayBox, M22, bold, a20, 18, "Times";
fontset = subsection, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, blackBox, M19, bold, a15, 14, "Times";
fontset = subsubsection, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, whiteBox, M18, bold, a12, 12, "Times";
fontset = text, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, 12, "Times";
fontset = smalltext, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, 10, "Times";
fontset = input, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeInput, M42, N23, bold, L-5, 12, "Courier";
fontset = output, output, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, L-5, 12, "Courier";
fontset = message, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, R65535, L-5, 12, "Courier";
fontset = print, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, L-5, 12, "Courier";
fontset = info, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, B65535, L-5, 12, "Courier";
fontset = postscript, PostScript, formatAsPostScript, output, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeGraphics, M7, l34, w282, h287, 12, "Courier";
fontset = name, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, italic, 10, "Geneva";
fontset = header, inactive, noKeepOnOnePage, preserveAspect, M7, 12, "Times";
fontset = leftheader, inactive, L2, 12, "Times";
fontset = footer, inactive, noKeepOnOnePage, preserveAspect, center, M7, 12, "Times";
fontset = leftfooter, inactive, L2, 12, "Times";
fontset = help, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, 10, "Times";
fontset = clipboard, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, 12, "Times";
fontset = completions, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, 12, "Times";
fontset = special1, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, 12, "Times";
fontset = special2, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, 12, "Times";
fontset = special3, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, 12, "Times";
fontset = special4, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, 12, "Times";
fontset = special5, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, 12, "Times";
paletteColors = 128; currentKernel;
]
:[font = subsubsection; inactive; Cclosed; preserveAspect; startGroup]
Legal Notice, Disclaimer, and Book Ordering Information:
:[font = input; inactive; preserveAspect; endGroup]
(* Legal Notice, Disclaimer, and Book Ordering Information:
Last Modified: FIO January 1, 1995
Mathematica For Physics
Robert L. Zimmerman and Fredrick I. Olness
MathSource Number: 0206-862
ISBN 0-201-53796-6
For ordering information, call 1-800-822-6339
Addison-Wesley Publishing Company
Communication with the authors:
Fredrick I. Olness: olness@mail.physics.smu.edu
Robert L. Zimmerman: bob@zim.uoregon.edu
Copyright 1995, Addison-Wesley Publishing Company, Inc. The material in
this file may be distributed freely so long as the content remains
unchanged, and the copyright and reference notices are included. The
publisher grants permission for the noncommercial use of these programs
and program segments. All other uses require the prior written consent
of the publisher.
All rights are reserved with regard to the material in the
"Mathematica For Physics" text, and may not be reproduced, stored in a
retrieval system, or transmitted, in any form or by any means,
electronic, mechanical, photocopying, recording, or otherwise, without
the prior written permission of the publisher.
The programs and applications presented in this book have been included
for their instructional value. They have been tested with care but are
not guaranteed for any particular purpose. The publisher does not
offer any warranties or representations, nor does it accept any
liabilities with respect to the programs or applications.
*)
:[font = subsection; inactive; preserveAspect; startGroup]
Chapter 3, Section 2, Problem 4:
Motion of a Damped, Forced Nonlinear Pendulum
;[s]
2:0,0;81,1;82,-1;
2:1,16,12,Times,1,14,0,0,0;1,13,9,Times,1,12,0,0,0;
:[font = input; preserveAspect; endGroup]
<dtheta[t], theta''[t]->dtheta'[t]};
eq3={eq2, theta'[t]==dtheta[t]}
:[font = input; preserveAspect]
linearEq= eq3 //Map[Series[#,{theta[t],0,1}]&,#,{3}]& //Normal
:[font = input; preserveAspect]
values={w0->1, wd->1, gam->0.01, f0->0.2};
:[font = input; preserveAspect]
initial={theta[0]==0.9 Pi, dtheta[0]==0};
:[font = input; preserveAspect]
ndsol1=NDSolve[Join[eq3,initial] //.values //Evaluate
,{theta[t],dtheta[t]}
,{t,0,100}
,MaxSteps->1000][[1]]
:[font = input; preserveAspect]
theta1[t_]= theta[t] //.ndsol1;
dtheta1[t_]=dtheta[t] //.ndsol1;
:[font = input; preserveAspect]
ndsol2=NDSolve[Join[linearEq,initial] //.values //Evaluate
,{theta[t],dtheta[t]}
,{t,0,100}
,MaxSteps->1000][[1]]
:[font = input; preserveAspect]
theta2[t_]= theta[t] //.ndsol2;
dtheta2[t_]=dtheta[t] //.ndsol2;
:[font = input; preserveAspect]
Plot[{theta1[t],theta2[t]}
,{t,0,100}
,PlotStyle->{{Thickness[0.010]},{Thickness[0.005]}}];
:[font = input; preserveAspect]
fplot1= Show[ fftSpectrum[theta1[t], t, 100]
,PlotRange->{{0,30},{0,25}}];
:[font = input; preserveAspect]
fplot2= Show[ fftSpectrum[theta2[t], t, 100]
,PlotRange->{{0,30},{0,25}}];
:[font = input; preserveAspect]
Show[GraphicsArray[{fplot1,fplot2}]];
:[font = input; preserveAspect]
doublePlot[theta1[t],dtheta1[t],{t,0,100}];
:[font = input; preserveAspect; endGroup]
doublePlot[theta2[t],dtheta2[t],{t,0,100}];
^*)