Advertisement
Guest User

Untitled

a guest
Jul 1st, 2015
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.58 KB | None | 0 0
  1. nm = 2;
  2. x = ToExpression["x" <> ToString[#]][t] & /@ Range[nm];
  3. k = RandomComplex[2 + 2*I, {nm, nm}];
  4. eqns = D[x[[#]], t, t] + Sum[k[[#, i]]*x[[i]], {i, 1, nm}] == 0 & /@
  5. Range[nm];
  6. eigVals = Eigenvalues[k];
  7. eigVecs = Eigenvectors[k];
  8. eigVecsInverse = Inverse[eigVecs];
  9. initsa = 0 == (Sum[
  10. eigVecsInverse[[#, i]]*D[x[[i]], t] /. t -> 0, {i, 1, nm}] +
  11. Sqrt[-eigVals[[#]]]*
  12. Sum[eigVecsInverse[[#, i]]*x[[i]] /. t -> 0, {i, 1, nm}]) & /@
  13. Range[nm];
  14. initsb = Thread[(x /. t -> 0) == 1 + I];
  15. sys = Join[eqns, initsa, initsb];
  16. aSol = DSolve[sys, x, t];
  17. TrigToExp[aSol]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement