Group Abstract Group Abstract

Message Boards Message Boards

0
|
318 Views
|
7 Replies
|
5 Total Likes
View groups...
Share
Share this post:

Why can’t directly get the range of l1+l2 under three constraints?

Posted 20 days ago

three constraints are:

l1 Tan@a + l2 == Sin@a/Cos[a]^2 + 1/Sin@a, 
l1 + l2/Tan@a == 1/(Cos@a (Sin@a)^2), 0 < a < \[Pi]/2

Why can't the following code solve the range of l1+l2? How to compute it correctly?

Reduce[{l1 Tan@a + l2 == Sin@a/Cos[a]^2 + 1/Sin@a, 
   l1 + l2/Tan@a == 1/(Cos@a (Sin@a)^2), 0 < a < \[Pi]/2, 
   t == l1 + l2}, t, {l1, l2, a}, Reals] // FullSimplify

enter image description here

update 01:

FunctionRange[{l1 + l2, 
  Reduce[{l1 Tan@a + l2 == Sin@a/Cos[a]^2 + 1/Sin@a, 
    l1 + l2/Tan@a == 1/(Cos@a (Sin@a)^2), 
    0 < a < \[Pi]/2, {l1, l2} > 0}, l2]}, {l1, a, l2}, y]

Why is the exact value unattainable? How to obtain the exact value?

enter image description here

POSTED BY: Bill Blair
7 Replies

Your first two constraints are equivalent, but never mind. It seems to me that FunctionRange gives a very wrong upper bound for l1+l2, as I can see from the plot:

constr1 = l1 Tan@a + l2 == Sin@a/Cos[a]^2 + 1/Sin@a;
constr2 = l1 + l2/Tan@a == 1/(Cos@a (Sin@a)^2);
ContourPlot3D[{constr1, l1 + l2 == 2.6, l1 + l2 == 15.6},
 {a, 0, Pi/2}, {l1, 0, 20}, {l2, 0, 20},
 AxesLabel -> Automatic]

When a and l1 are small, the value of l1+l2 can become much larger than what FunctionRange claims (with warning). For example, let us plot l1+l2 along the plane a==l1:

constr1 = l1 Tan@a + l2 == Sin@a/Cos[a]^2 + 1/Sin@a;
constr1 /. a -> l1
Solve[%, l2]
l1 + l2 /. %[[1]]
Plot[%, {l1, 0, Pi/2}, AxesLabel -> {l1 == a, l1 + l2}, 
 PlotRange -> {0, 100}]
POSTED BY: Gianluca Gorni
Posted 18 days ago

enter image description here

POSTED BY: Bill Blair

Interesting. Is it documented?

POSTED BY: Gianluca Gorni

Once you have l1+l2 expressed as a function, you can use FunctionRange.

POSTED BY: Gianluca Gorni
Posted 18 days ago
FunctionRange[{l1 + l2, 
  Reduce[{l1 Tan@a + l2 == Sin@a/Cos[a]^2 + 1/Sin@a, 
    l1 + l2/Tan@a == 1/(Cos@a (Sin@a)^2), 
    0 < a < \[Pi]/2, {l1, l2} > 0}, l2]}, {l1, a, l2}, y]

Why is the exact value unattainable? How to obtain the exact value?

enter image description here

POSTED BY: Bill Blair

The first two constraints are equivalent, so that l1+l2 is not a function of a alone. I cannot find references to your syntax

Reduce[expr, t, {l1, l2, a}, Reals]

in the documentation.

POSTED BY: Gianluca Gorni
Posted 18 days ago

There is such a way of usage.

Reduce[{t == 1/(x y^2), x^2 + y^2 == 1, x > 0, y > 0, t > 0}, t, {x, 
  y}, Reals]

enter image description here

POSTED BY: Bill Blair
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard