MATLAB: Solving for unknown matrix element as function of an undetermined independent variable

function handlematrixsymbolic

Assume a matrix equation of the form A*x=b, where matrix A has elements that are functions of an independent variable "E" which is to be determined later (For example, for simplicity,let the four matrix elements be a11=@(E) 2*E, a12=@(E) E^2 and so on for a21 and a22 to have any form of functions)
vector x=[1,r] where r is unknown to be found as a function of E
vector b=[t,0] where t is unknown to be found as a function of E
the question goes: Is there a possible way to code the problem (as it is without further manual mathematical manipulations) to find "t" and "r" as functions of E

Best Answer

Think about it. Write out what you are asking. You have a 2x2 matrix, where each element is a function of the unknown variable E. (Some of those elements may be a constant.) But assume that there is only one unknown in A, and that is the variable E. So write it out!!!!!!!!
A = [A11(E),A12(E);A21(E),A22(E)];
So what is A times some vector x? Lets use the example you gave. x = [1;r], b = [t;0]. Then A*x=b means this:
A11(E) + A12(E)*r = t
AND
A21(E) + A22(E)*r = 0
Here, we assume that r and t are fixed variables, although they are not given any known value. Is there a way to solve for E?
NO NO NO. I said it three times, so it must be true.
You are posing TWO equations in the ONE unknown variable E. In general, there will never be any solution to solve for E that satisfies BOTH equations, unless one of them is trivially true, or unless they are both essentially the same equation.
The point is a matrix equation of this form is equivalent to TWO equations. With only one variable to solve for, you have no way forward.
Related Question