Solving Equaiton with multplying power

2 vues (au cours des 30 derniers jours)
jack london
jack london le 15 Jan 2022
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

Réponse acceptée

Walter Roberson
Walter Roberson le 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 commentaires
jack london
jack london le 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 le 17 Jan 2022
Modifié(e) : Walter Roberson le 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)

Connectez-vous pour commenter.

Plus de réponses (1)

Matt J
Matt J le 15 Jan 2022
Modifié(e) : Matt J le 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 commentaire
jack london
jack london le 16 Jan 2022
Thansk for answer.
I dont understant what represents LHS and RHS, could you give more detail please

Connectez-vous pour commenter.

Catégories

En savoir plus sur Function Creation dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by