I'm attempting to solve the following system of equations for k and $\kappa$ $$\mu\epsilon\omega^2=k^2-\kappa^2$$ $$\mu\sigma\omega=2k\kappa$$ but when I type into Mathematica

Simplify[Solve[{μ ϵ ω^2 == k^2 - κ^2, μ σ ω == 2 k κ}, {k, κ}]

I get the following output, which is pretty gnarly

enter image description here

The solution I was hoping to get (from a textbook) is $$k\equiv \omega\sqrt{\frac{\epsilon\mu}{2}}\left[\sqrt{1+\left(\frac{\sigma}{\epsilon\omega}\right)^2}+1\right]^{1/2}$$ $$\kappa\equiv \omega\sqrt{\frac{\epsilon\mu}{2}}\left[\sqrt{1+\left(\frac{\sigma}{\epsilon\omega}\right)^2}-1\right]^{1/2}$$ I'm not sure how to simplify the output from Mathematica to get it into that specific from I'm looking for. Are there extra assumptions I need to pass? I've tried the same command as Simplify only changing it to Reduce but it's still not quite clear the direction to take. For some context, this is looking at the complex wave number from Griffiths' Introduction to Electrodynamics.

  • $\begingroup$ Would I use PowerExpand before or after Solve? $\endgroup$
    – Bo Johnson
    Feb 22, 2019 at 6:23
  • $\begingroup$ Actually, in Simplify you can use Assumptions like this: sol = Solve[{μ ϵ ω^2 == k^2 - κ^2, μ σ ω == 2 k κ}, {k, κ}]; Simplify[sol, Assumptions -> {μ > 0, ϵ > 0, ω > 0}]. And then select the solution you need, I guess. $\endgroup$ Feb 22, 2019 at 6:31

1 Answer 1


Try this:

 Solve[Eliminate[{μ ϵ ω^2 == k^2 - κ^2, μ σ ω == 2 k κ}, κ], k], 
 {ω > 0, σ > 0, ϵ > 0, μ > 0}

yielding the results for k

enter image description here

The last two results look almost like you want. To bring them exactly to the needed form try this:

expr = Sqrt[μ ω (ϵ ω + 
     Sqrt[ σ^2 + ϵ^2 ω^2])]/Sqrt[2];

HoldForm[ω*Sqrt[(ϵ*μ)/2]]* Simplify[
   {ω > 0, σ > 0, ϵ > 0, μ > 0}
   ] // ReleaseHold

returning the following:

enter image description here

The same you could do for kappa.

Have fun!

  • $\begingroup$ @Henrik Schumacher Henrik, what do you do to introduce the Greek letters into the code? $\endgroup$ Feb 22, 2019 at 12:57
  • $\begingroup$ I installed NinjaKit and halirutan's script mathematica.meta.stackexchange.com/a/1044. Should you use Safari as browser, you have to activate Extension Builders manually after each relaunch of the browser (which is annoying). Anyways, you get these very neat buttons that allow you to perform many replacements of \[...]-syntax to unicode symbols at once. Have a try! $\endgroup$ Feb 22, 2019 at 13:12
  • $\begingroup$ @AlexeiBoulbitch So I used the last expression you have beginning with HoldForm but got the same output as before with no change. Are there some preferences I need to change in order to get what you have? I have Mathematica 11.3 if that helps. $\endgroup$
    – Bo Johnson
    Feb 22, 2019 at 15:29
  • $\begingroup$ Maybe you used as the expression, not the same as I did? Have a look, I edited the answer. $\endgroup$ Feb 22, 2019 at 15:39
  • $\begingroup$ That was it, I didn't have the expr in there. $\endgroup$
    – Bo Johnson
    Feb 22, 2019 at 15:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.