Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- nm = 2;
- x = ToExpression["x" <> ToString[#]][t] & /@ Range[nm];
- k = RandomComplex[2 + 2*I, {nm, nm}];
- eqns = D[x[[#]], t, t] + Sum[k[[#, i]]*x[[i]], {i, 1, nm}] == 0 & /@
- Range[nm];
- eigVals = Eigenvalues[k];
- eigVecs = Eigenvectors[k];
- eigVecsInverse = Inverse[eigVecs];
- initsa = 0 == (Sum[
- eigVecsInverse[[#, i]]*D[x[[i]], t] /. t -> 0, {i, 1, nm}] +
- Sqrt[-eigVals[[#]]]*
- Sum[eigVecsInverse[[#, i]]*x[[i]] /. t -> 0, {i, 1, nm}]) & /@
- Range[nm];
- initsb = Thread[(x /. t -> 0) == 1 + I];
- sys = Join[eqns, initsa, initsb];
- aSol = DSolve[sys, x, t];
- TrigToExp[aSol]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement