Tag Info

New answers tagged

0

It is known that there are closed forms for the eigenvalues of tridiagonal Toeplitz matrices like the one given in the OP: n = 1000; N[4 Sin[π Range[n]/(2 n + 2)]^2] See the linked paper for more details, as well as closed forms for the eigenvalues of modified tridiagonal Toeplitz matrices.


3

Apologies for the procedural approach, but this seems to work. Trace out one line at a time, using Interpolation to extrapolate where the next point is likely to be: c = {}; frames = {}; xvals = Pi Range[-1, 1, 1/100]; alle = Table[({y, #} & /@ Eigenvalues[m]), {y, xvals}] ; colors = Table[Hue[RandomReal[{0, 2/3}]], {Length@m}]; Clear[g]; Monitor[ Do[ ...


2

I think the function you are looking for is CoefficientArrays; here is its documentation. Your system is quite complex so I will let you deal with its intricacies, but here is a demonstration on a toy example. Let's define a set of linear equations in $x$, $y$, and $z$: eqns = {2 x - y + 4 z == 12, 3 x + 2 y + z == 10, -y + z == 1}; The solutions of ...


2

In this paper of Farouki and Rajan, it is noted that there is a simple method to interconvert between the monomial and Bernstein forms: one merely needs to multiply an appropriate matrix with the coefficients. Here, then, are the routines for generating the required matrices: (* monomial to Bernstein conversion *) pbmat[n_Integer?NonNegative] := ...


6

Experimentation based on the documentation you quoted led to two valid Method options: MatrixExp[{{1.2, 5.6}, {3, 4}}, Method -> "Pade"] {{346.557, 661.735}, {354.501, 677.425}} MatrixExp[{{1.2, 5.6}, {3, 4}}, {1, 2}, Method -> "Krylov"] {1670.03, 1709.35} If "Krylov" is used for the single parameter syntax it complains: MatrixExp[{{1.2, ...


2

A simple solution would be using Coefficient p = Sum[c[i, j] x^i Exp[I j x], {i, 0, 3}, {j, 0, 3}]; Table[a[i, j] = Coefficient[Coefficient[p, x, i], Exp[I x], j] , {j, 0, 3}, {i, 0, 3}]; MatrixForm[%] $ \left( \begin{array}{cccc} c(0,0) & c(0,1) & c(0,2) & c(0,3) \\ c(1,0) & c(1,1) & c(1,2) & c(1,3) \\ c(2,0) & ...


2

I'll illustrate with a simple example. mat = {{2, 1}, {1, 3.}}; ch = CholeskyDecomposition[mat] (* Out[145]= {{1.41421356237, 0.707106781187}, {0., 1.58113883008}} *) Pull out the diagonal. Use it to modify and get a triangular matrix with ones on the diagonal. diag = Diagonal[ch] (* Out[148]= {1.41421356237, 1.58113883008} *) modch = ch*1/diag (* ...


1

Here is a simple solution. Think of everything as functions. Then define: A = Function[T , Function[{i,j,k}, u[i+1,j,k]*(T[i+1,j,k]+T[i,j,k]) - u[i-1,j,k]*(T[i-1,j,k]+T[i,j,k]) + v[i,j+1,k]*(T[i,j+1,k]+T[i,j,k]) - v[i,j-1,k]*(T[i,j-1,k]+T[i,j,k]) + ...


7

Here is an approach that might work out. Use GroebnerBasis to set up all polynomial relations, then reduce to see where there may be linear dependencies. We use surrogate variables to define algebraic relations for roots and reciprocals, so sx stands in for sqrt(x) below, and similar for the reciprocal variables xr1 and sxr2. We also use new variables to ...


4

An embellished variant of @kajames' answer using ContourPlot3D: cp = ContourPlot3D[{x + y == 2, y - z == 3}, {x, -10, 10}, {y, -10, 10}, {z, -10, 10}, ContourStyle -> {Directive[Blue, Opacity[0.5]], Directive[Green, Opacity[0.5]]}, Mesh -> False, BoundaryStyle-> {1 -> None, 2 -> None, {1, 2} -> Directive[Thick, Cyan, ...


3

Use ContourPlot3D to draw planes: ContourPlot3D[x + y == 2, {x, -10, 10}, {y, -10, 10}, {z, -10, 10}, ContourStyle -> Directive[Blue, Opacity[0.5]], Mesh -> False] Also, the second point for your Arrow should add to point. (As an aside, I'm sorry if this would be better as a comment to the question; I don't have the rep)


2

myPlanes = Graphics3D[ {{Opacity[0.5], Yellow, Polygon[{{2, 0, -3}, {2, 0, 0}, {0, 2, 0}, {0, 2, -3}, {2, 0, -3}}]}, {Opacity[0.5], Blue, Polygon[{{0, 0, -3}, {0, 3, 0}, {2, 3, 0}, {2, 0, -3}, {0, 0, -3}}]}}, Axes -> True, AxesLabel -> {"x", "y", "z"} ] myIntersection = ParametricPlot3D[{x, 2 - x, -x - 1}, {x, 0, ...


0

From the tutorial on Advanced Matrix Operations, "Jordan decomposition in general writes any square matrix in the form as s.j.s^-1." http://reference.wolfram.com/language/tutorial/AdvancedMatrixOperations.html It does not state that the form is unique. m1 = {{1, i}, {i, -1}}; {s1, j1} = JordanDecomposition[m1] {{{(1 - Sqrt[1 + i^2])/i, ...



Top 50 recent answers are included