Re: Solving Underdamped Equation of motion
- To: mathgroup at smc.vnet.net
- Subject: [mg6490] Re: [mg6436] Solving Underdamped Equation of motion
- From: Dean Johnson <johnson at wmich.edu>
- Date: Mon, 24 Mar 1997 21:38:43 -0500 (EST)
- Organization: WMU
- Sender: owner-wri-mathgroup at wolfram.com
Cliggio wrote: > I am trying to solve a differential equation. The equation is the equation > of motion for a spring and dashpot. The solution is textbook. As an > exercise I would like to obtain the same solution using Mathematica. The > equation is: > x''+ 2 z w x' + w^2 x = y'' > > where y'', the forcing function, is just a variable here. > > When mathematica solves it. It gives me a solution in the form of e to > some exponent. The form I want it in is in aCosb + cSind. I used the > ExpToTrig function but it gives me the equation in the form of Cosh and > Sinh. In order to get the output to produce what I want, I have to tell > Mathematica z is less than one. This corresponds to an underdamped system. > If I enter a value of z <1 and then do the ExpToTrig function I get the > solution I want. However it is evaluated at z = to that value and does not > give me the general solution. Does anyone know how I can get it to produce > the general solution for z < 1. In other words to constrain it at that set > of values? > The command I enter is below: > z has been replaced with zeta, and with omega > > DSolve[{X''[t]+2* \[Zeta] *\[Omega]* X'[t]+\[Omega]^2*X[t]==-z},X[t],t] You are stuck with an exponential solution having arbitrary coefficients C[1] and C[2] with this invocation of DSolve. However, you can examine what the trignometric solution form might be (for zeta <1) by eliminating one of the C[i] and manipulating: % /. Sqrt[x_^2 - 1] ->I* Sqrt[1 - x^2] RewriteExp[% /. C[2] -> C[1]] You will then get this answer: 2 z 2 C[1] Cos[t Sqrt[1 - \[Zeta] ] \[Omega]] {{X[t] -> -(--) + ----------------------------}} 2 -(-t \[Zeta] \[Omega]) \[Omega] E In your case, it would be better to include initial conditions in your DSolve, and then transform the exponential forms to trig forms using something like ExpToSin and ComplexExpand. If these don't get to the form you want (and I just checked; they don't) then use my RewriteExp which addresses this situation more specifically [http://www2.wmich.edu/~johnson/diffeq/RewriteExp.m/]. I also have a couple papers on the subject. -Dean Johnson Professor