cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Have a PTC product question you need answered fast? Chances are someone has asked it before. Learn about the community search. X

unknown sinx value, how to solve x when it says no solution

NW_8150070
2-Explorer

unknown sinx value, how to solve x when it says no solution

Hello! when I tried to solve b value from sin(b) it says no solution because b is undefined. If I use 'Solve block' and assume a value (b=1 deg) then the result will be same as my assumption. Could anyone please give a hint?

 

NW_8150070_0-1720593848701.png

 

6 REPLIES 6

Hi,

Your definition of sin(Beta) overides the normal sin() function.  

There are two answers to the equations and these are shown below.

 

Capture.JPG

Hi,

do not use names of system defined functions for your personal functions.

MartinHanak_0-1720596645578.png

 


Martin Hanák
Werner_E
25-Diamond I
(To:NW_8150070)

1) If you want to use the symbolic "solve" you must (re) define the unit "deg" right in the front of the page before you first use it when defining variable "L". Reason is that the symbolics does not know anything about units. Be sure to label the name "deg" as being a "Unit" when you do so.

Werner_E_2-1720598753426.png

 

2) As was already said you redefined the sine function when you wrote sin(beta):=... to be a constant function, When you now tried to solve the equation sin(beta=0.498, Prime is quite silly when it tells you that it found no solution because actually ANY value of beta would yield 0.498 when used as argument of your newly defined function "sin".

So don't redefine built-in functions like "sin" if you intend to still use the original function afterwards.

 

3) Furthermore you should avoid using copy & paste (you copied the value 0.498) because this may be error prone and more important would be needed to redo every time you change any input values.

 

You may use the boolean equal to define and solve your equation and because your equation has an infinite number of solutions (two in the range of one period of sine in 0 to 2 pi) you may tell Primes symbolics the range you are interested in using the "assume" modifier:

Werner_E_0-1720598571556.png

 

Of course you could save the value of the expression on the right hand side of the equations in a variable (NOT a function) first and use this in your equation for a more space saving display:

Werner_E_7-1720600094313.png

 

Of course because you are just looking for a numeric value, you don't have to use the symbolic method with "solve".
You may use any of Primes numeric methods (there would be no need to redefine the unit "deg" if you do so). Martin showed how to use a solve block with "find" to get the value(s) you are interested in. You can control which of the infinite number of solutions you will get my choosing an appropriate guess value (was shown by Martin). Another way to control the output value would be to add an additional constraint.

Werner_E_3-1720599264721.png

And you could also use your predefined variable "sinOfß" in the equation

Werner_E_8-1720600145674.png

 

As a solve block is ugly looking and space consuming, you might prefer using the numeric "root" function instead.

When you use the "root" function you have the choice of either provide a guess value or to provide the range you expect the solution to be in.

Controlling the outcome using a guess:

Werner_E_5-1720599974596.png

Controlling the outcome using lower and upper limit:

Werner_E_6-1720600044565.png

 

Prime 10 sheet attached

Hi,

The solution to sin(B) = 0.498 is simply B = asin(0.498)

Cheers

Terry


@terryhendicott wrote:

Hi,

The solution to sin(B) = 0.498 is simply B = asin(0.498)

Cheers

Terry


That's not necessarily true if you are interested in a value NOT in the range from -pi/2 to pi/2 which is the range arcsin is limited by definition. You then would have to know yourself that you may also use pi - asin(ß) or add arbitrary multiples of 2 pi to both solutions.

In other words sin(asin(x))=x is true for any valid x (-1<=x<=1), but asin(sin(ß))=ß is not always true for any valid angle ß, its only true for -90°<=ß<=90°.

So B=asin(0.498) is not THE solution to sin(ß)=0.948, its just one of an infinite number of solutions to this equation and it may not be the desired solution 😉

 

Furthermore I also hoped that the methods described could be useful to know for @NW_8150070 when it comes to more complex equations, which can't be solved that easily, as well.

 

But the main problem in the sheet of @NW_8150070  sure was that he redefined the built-in sine function to return a constant value which you already noted in your first reply here. I just did not like the idea to manually copy and paste the (inaccurate) result 0.498 from the evaluation of the expression to the equation to be solved. I rather prefer as i had shown either using the expression itself of assigning its  value to a variable first and using this variable later. Furthermore I would prefer numerical approaches in this case.

 

I guess I also have to correct what I said about Prime being silly not finding a solution because every argument would be a solution.

Actually I expected Prime to return the solution 0 as one of the many different solutions.

But Prime is correct that no solution exists. In the original sheet sin(ß) is defined as a constant function returning the value of the given expression. And this value is NOT 0.498 as displayed but rather 0.4981963114.... So the equation demanding sin(ß) to be exactly 0,498 indeed has no solution 😉

 

Hello @NW_8150070

 

It looks like you have some responses from some community members. If any of these replies helped you solve your question please mark the appropriate reply as the Accepted Solution. 

Of course, if you have more to share on your issue, please let the Community know so other community members can continue to help you.

Thanks,
Vivek N.
Community Moderation Team.

Announcements

Top Tags