4
$\begingroup$

I got a system like this (just for example):

enter image description here

I need to get some of the variables expressed in a form like the following.

x == (z - z1) Tan[α1q - μ ] + x1

Let's say that x and σ are required. I write the following code:

eq1 := (x - x1) == (z - z1) Tan[α1q - μ ]; 
eq2 := (x - x2) == (z - z2) Tan[α2q - μ ]; 
eq3 := (σ - σ1) + 2 σ1q Tan[ϕ] (α - α1) == γ (z - z1 - (x - x1) Tan[ϕ]); 
eq4 := (σ - σ2) + 2 σ2q Tan[ϕ] (α - α2) == γ (z - z2 - (x - x2) Tan[ϕ]); 
system1 := {eq1, eq2, eq3, eq4}; 
Solve[system1, x]

Evaluation gives me just {}. How to make this request correct?

UPD got different outputs in notebooks and none of them is what I really want.

enter image description here

$\endgroup$
  • $\begingroup$ the question is ill posed. You have four equations and so to satisfy all you will need to solve for four variables ( Pick any four that do not live inside the trig funcions and you should get a nice result ) $\endgroup$ – george2079 Feb 9 '17 at 15:47
2
$\begingroup$

I think MMM is being ingenuous. Reduce returns a rather complicated expression with a lot of conditionals (24 of them). It turns out that the equation for x is same under all the conditions. So I think I need to show a little more work than MMM did.

eq1 = (x - x1) == (z - z1) Tan[α1q - μ];
eq2 = (x - x2) == (z - z2) Tan[α2q - μ];
eq3 = (σ - σ1) + 2 σ1q Tan[ϕ] (α - α1) == γ (z - z1 - (x - x1) Tan[ϕ]);
eq4 = (σ - σ2) + 2 σ2q Tan[ϕ] (α - α2) == γ (z - z2 - (x - x2) Tan[ϕ]);
system1 = {eq1, eq2, eq3, eq4};

Note I do not use := here. It is inappropriate.

xeqs = Cases[Reduce[system1, x], x == _, ∞] // Union

{x == x2 + z Tan[α2q - μ] - z2 Tan[α2q - μ]}

This last shows that there is really only one solution, so what is wanted is

xeqs[[1]]

x == x2 + z Tan[α2q - μ] - z2 Tan[α2q - μ]

| improve this answer | |
$\endgroup$
  • $\begingroup$ Not getting this. The result only satisfies one equation and if we are happy with that there are four results obtained by solving each equation individually for x. $\endgroup$ – george2079 Feb 9 '17 at 15:43
6
$\begingroup$

Try Reduce

eq1 := (x - x1) == (z - z1) Tan[α1 q - μ];
eq2 := (x - x2) == (z - z2) Tan[α2 q - μ];
eq3 := (σ - σ1) + 
    2 σ1q Tan[ϕ] (α - α1) == γ (z - 
      z1 - (x - x1) Tan[ϕ]);
eq4 := (σ - σ2) + 
    2 σ2q Tan[ϕ] (α - α2) == γ (z - 
      z2 - (x - x2) Tan[ϕ]);
system1 := {eq1, eq2, eq3, eq4};
Reduce[system1, x]

Learning from Pros is always helpful...

Reduce[system1, x] // Union // First

x == x1 + z Tan[q α1 - μ] - z1 Tan[q α1 - μ]

Collect[%, Tan[q α1 - μ]]

x == x1 + (z - z1) Tan[q α1 - μ]

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.