How to solve equations with more unknowns

I want to write a code to find pi,pj and pk. How to solve these equations, all x and y terms are known.
Eq1 : x=pi.xi + pj.xj + pk.xk
Eq2 : y=pi.yi + pj.yj + pk.yk
Eq3 : pi + pj + pk = 1

8 commentaires

TADA
TADA le 9 Nov 2018
Modifié(e) : TADA le 9 Nov 2018
seems like a system of 3 linear equations with 3 parameters. If I got it right, all you need is to declare your parameters (pi, pj, pk) as symbolic variables, and send these equations to solve function.
What's that means?
pi.xi
Awais Saeed
Awais Saeed le 9 Nov 2018
TADA its working. Bruno i am doing a project on Color Shift Keying for visible light communication for which i am trying to convert chromaticity coordinates(x,y) into a 3-element vector P which is the power of LEDs and the xi and yi etc are chromaticity values at the central wavelengths of RGB LEDs.
TADA
TADA le 10 Nov 2018
Modifié(e) : TADA le 10 Nov 2018
@awais Saeed, I think bruno ment what do you mean by the syntax
pi.xi
I assumed you ment multiplation, which you should right like that so it is clear
pi*xi
Walter Roberson
Walter Roberson le 10 Nov 2018
Instead of solve() you can probably use the numeric \ operator.
madhan ravi
madhan ravi le 10 Nov 2018
TADA its working.
is pi a struct with values?
Awais Saeed
Awais Saeed le 10 Nov 2018
Yes it is multiplication(pi*xi). Pi,pj,pk are variables not struct.
Awais Saeed
Awais Saeed le 10 Nov 2018
@walter roberson i have solved the equations with solve() command. But how with numeric \ operator

Connectez-vous pour commenter.

 Réponse acceptée

A = [xi, xj, xk;
yi, yj, yk;
1, 1, 1];
b = [x;
y;
1];
sol = A\b;
pi = sol(1); pj = sol(2); pk = sol(3);

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by