Solving Equaiton with multplying power

2 views (last 30 days)
I have a equation given below, I need to solve this equaiton in matlab and find base X,Y,Z . There is solution given.
In matlab, I try to setup base but I cant figure out exactly. How I setup this equation in Matlab ? Thanks for help.
My matlab code for design base of the equation :
clear; clc;
[0 1 1^-1 ] % B*C^(-1)
[0 1 0] % B
[1 1^-3 0] %A*B^-3
[0 1^3 1^-1] %B^3*C^-1

Accepted Answer

Walter Roberson
Walter Roberson on 15 Jan 2022
syms A B C
syms X Y Z integer
eqn = (B*C^-1)^X * (B)^Y * (A*B^-3)^Z * (B^3*C^-1) == A^0*B^0*C^0
eqn = 
seqn = simplify(lhs(eqn)) == simplify(rhs(eqn))
seqn = 
collect(lhs(seqn),C)
ans = 
powers = findSymType(ans, 'power')
powers = 
need_to_solve = arrayfun(@(expression) children(expression,2), powers)
need_to_solve = 
syms X Y Z %remove assumptions
sol = solve(need_to_solve)
sol = struct with fields:
X: -1 Y: -2 Z: 0
  4 Comments
jack london
jack london on 17 Jan 2022
Hi again,
When I run code on my matlab R2021a the output is:
Gıves this format, how I convert to numeric values (X=-1 Y=-2 Z=0)
Walter Roberson
Walter Roberson on 17 Jan 2022
Edited: Walter Roberson on 17 Jan 2022
X = double(sol.X)
Y = double(sol.Y)
Z = double(sol.Z)
Remember though that if you are using displayFormula, then what it prefers is character values -- which would be from char(sol.X) or string(sol.X) rather than double(sol.X)

Sign in to comment.

More Answers (1)

Matt J
Matt J on 15 Jan 2022
Edited: Matt J on 15 Jan 2022
LHS=[0 0 1;
-1 0 0;
1 1 -3];
RHS=[0;1;-3];
XYZ=LHS\RHS
XYZ = 3×1
-1 -2 0
  1 Comment
jack london
jack london on 16 Jan 2022
Thansk for answer.
I dont understant what represents LHS and RHS, could you give more detail please

Sign in to comment.

Categories

Find more on Function Creation in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!