[Math] Transcendental Equations, Matrix (Eigenvalue problem?) (Mathematica)

mathematicamatrices

I'm currently having trouble getting my head around solving this matrix (eigenvalue problem?) transcendental equation.

I have a matrix 4×4 where, $\det(M)=0$. And where ij of the matrix is a function of 4 variables, 2 of them are known where 2 are unknown, $\alpha_r$ (alphar) and $\epsilon$ (epsilon, the strain). I've set strain to a reasonable value (0.05) which leaves me one variable, alphar, to solve for. The matrix I have is below,

matrix

and the Mathematica code is (with a=alphar)

M = {{6.08259*10^22 Cosh[0.76724 a], 2.98856*10^23 Cosh[3.53664 a], -1.60097*10^21 Cosh[0.191442 a], -6.58085*10^21 Cosh[0.823236 a]}, 
     {-7.24194*10^22 Sinh[0.76724 a], 1.63044*10^24 Sinh[3.53664 a], -1.89318*10^21 Sinh[0.191442 a], 3.40266*10^22 Sinh[0.823236 a]}, 
     {2.21319*10^11 Sinh[0.76724 a], 2.21319*10^11 Sinh[3.53664 a], 1.46171*10^11 Sinh[0.191442 a], 1.46171*10^11 Sinh[0.823236 a]}, 
     {-3.57353*10^11 Cosh[0.76724 a], 1.01793*10^12 Cosh[3.53664 a], 5.59395*10^10 Cosh[0.191442 a], -1.44394*10^11 Cosh[0.823236 a]}}

I need to find the root so that $\det(M)=0$. I've tried using

FindRoot[Det[M]==0, {a,0}]

But I don't get a reasonable value (depending on initial guess ranging from 0 to anything between 5 for example) I get 0 or almost 0, I should hopefully get a value between 0.1 and 0.8 depending on initial strain value.

From similar papers on the topic it seems I should have one transcendental equation in terms of the two variables, $\alpha_r$ and $\epsilon$. Would I be right in assuming this would be the characteristic polynomial of the matrix?

Sorry for the vague post, I tried getting in as much info as possible without blabbering on!

Best Answer

OK, just to summarize the comment thread above, let's start by importing the more general expression that you put on pastebin:

MfXNRkpc = Import["http://pastebin.com/raw.php?i=MfXNRkpc", "Text"];

And (by inspection) clean it up a little,

MfXNRkpc2 = StringReplace[StringSplit[MfXNRkpc, ";\n"], 
    {"ClearAll[\"Global`*\"]\n" -> "", "// MatrixForm" -> ";"}];

This is now safe to evaluate (if in doubt, remove the commented out bit)

ToExpression[MfXNRkpc2(*,StandardForm,Hold*)];

Now bqs is your 4x4 matrix that depends on the strain e11 that you say ranges from about 0.01 to 0.1 and ar ($\alpha_r$) that should be from 0.1 to around 0.8.

Let's define the determinate (slightly rescaled):

dbqs[e11_, ar_] = Det[10^-15 bqs];

we can check that it is symmetric in ar since
Simplify[dbqs[e11, ar] - dbqs[e11, -ar]]==0 returns True. We can also check that dbqs[e11, 0]==0. Then, if we plot it for a range of e11

Plot[Evaluate[Table[Tooltip[dbqs[e11, ar], e11], 
  {e11, .01, .1, .01}]], {ar,   0, .01}]

the plot

it looks like Det[bqs] < 0 for all $\alpha_r>0$, which is something you say should not be the case. So I suggest you must have an error somewhere... (n.b. The general form of dbqs[e11, ar] is messy, so proving it is always less than zero might be tricky...)