Calculating the angle of isosceles triagle

Crchisholm

New member
Joined
Jan 26, 2015
Messages
6
I have an isosceles triagle where the two adjacent sides (a,b) are 95mm. The opposite side (c) is of variable length. What formula can I use to calculate angle ab for any give c.

Thanks in advance.
 
I have an isosceles triagle where the two adjacent sides (a,b) are 95mm.
By "adjacent", do you mean "same-length"?

The opposite side (c) is of variable length.
Sides are "opposite" angles. By "opposite side", do you mean "base"?

What formula can I use to calculate angle ab for any give c.
By "angle ab", do you mean "Angle C, which is formed by sides a and b and is opposite side c"?

What are your thoughts? What have you tried? How far have you gotten? Where are you stuck?

For instance, you drew the triangle, drew the height line "h", noted the right triangles that this line "h" forms, and considered one of the triangles, having sides "a", half of "c" (we'll call it "c/2"), and "h". You need to find the measure of half of Angle C (we'll call it Angle C/2). You noted the ratio formed by c/2 and a when finding the sine of C/2. And... then what?

Please be complete. Thank you! ;)
 
Think I got it.

Sorry....I have been out of school for over 45 years and I wasn't very good at trig even then. I have attached a diagram showing what I am talking about. Basically, in the diagram (ignore the dots...artifact of the software), I show an angle of 104.34 degrees for angle C. I knew this was close, but not exactly correct for a c of 150mm, so.....

I took the standard law of cosines .... COS(C) = (a2+b2-c2)/2ab

and since the a and b were of equal length, I ignored b and came to ... COS(C)=(2a2-c2)/2a2
... or ... COS(C)= -c2/2a2
... or ... COS(C) = -0.67036

....so ....COS-1(0.67036) = 1.819905 rad
... or ... 104.2729 deg

end result: angle C = 104.2729 degrees.

I think this would yield a formula for calculating the angle for any given c of... Angle C in degrees = COS-1(-c2/18050 ) * 57.2957795 .... assuming that a and b will always be 95mm and fixed.

I think this is right, but not sure if there is a better way to do this.

Thanks for your response and any further assistance you might see fit to provide.

Charlie
 

Attachments

  • trigQuestion.jpg
    trigQuestion.jpg
    253.4 KB · Views: 3
Sorry....I have been out of school for over 45 years and I wasn't very good at trig even then. I have attached a diagram showing what I am talking about. Basically, in the diagram (ignore the dots...artifact of the software), I show an angle of 104.34 degrees for angle C. I knew this was close, but not exactly correct for a c of 150mm, so.....

I took the standard law of cosines .... COS(C) = (a2+b2-c2)/2ab

and since the a and b were of equal length, I ignored b and came to ... COS(C)=(2a2-c2)/2a2
... or ... COS(C)= -c2/2a2
... or ... COS(C) = -0.67036

....so ....COS-1(0.67036) = 1.819905 rad
... or ... 104.2729 deg

end result: angle C = 104.2729 degrees.

I think this would yield a formula for calculating the angle for any given c of... Angle C in degrees = COS-1(-c2/18050 ) * 57.2957795 .... assuming that a and b will always be 95mm and fixed.

I think this is right, but not sure if there is a better way to do this.

Thanks for your response and any further assistance you might see fit to provide.

Charlie


Is 105mm the given value for the length c in the question?

Moreover cos(C) = (2a^2 - c^2)/(2a^2) = 1 - c^2/(2a^2)

and not -c^2/(2a^2)

if c = 105mm, then cos(C) = 1 - 105^2/(2x95^2)
 
Sorry....I have been out of school for over 45 years and I wasn't very good at trig even then. I have attached a diagram showing what I am talking about. Basically, in the diagram (ignore the dots...artifact of the software), I show an angle of 104.34 degrees for angle C. I knew this was close, but not exactly correct for a c of 150mm, so.....

I took the standard law of cosines .... COS(C) = (a2+b2-c2)/2ab

and since the a and b were of equal length, I ignored b and came to ... COS(C)=(2a2-c2)/2a2
... or ... COS(C)= -c2/2a2 This line is like saying (5-2)/5 = -2/5, which is not true. This is why you should NOT say that things cancel out. You can say things cancel out to 1 or things cancel out to 0 but not just things cancel out!
... or ... COS(C) = -0.67036 The only way you can say exactly what -c2/2a^2 is if you know what a and c are. You told us that a is 95 but what is c? Your own answer above will only be correct if c ~ 110, yet your own diagram shows that c=150

....so ....COS-1(0.67036) = 1.819905 rad
... or ... 104.2729 deg

end result: angle C = 104.2729 degrees.

I think this would yield a formula for calculating the angle for any given c of... Angle C in degrees = COS-1(-c2/18050 ) * 57.2957795 .... assuming that a and b will always be 95mm and fixed.

I think this is right, but not sure if there is a better way to do this.

Thanks for your response and any further assistance you might see fit to provide.

Charlie
I do not see a way to do this problem w/o know c or C. Think of a compass where both legs are 95mm long. You can make the angle where the two legs join larger and smaller and the legs are both still 95mm long. Where ever the two legs terminate simply join those points for the 3rd side of the triangle. There are an infinite number of triangles that can be formed.
 
Sorry....I have been out of school for over 45 years and I wasn't very good at trig even then. I have attached a diagram showing what I am talking about. Basically, in the diagram (ignore the dots...artifact of the software), I show an angle of 104.34 degrees for angle C. I knew this was close, but not exactly correct for a c of 150mm, so.....

I took the standard law of cosines .... COS(C) = (a2+b2-c2)/2ab

and since the a and b were of equal length, I ignored b and came to ... COS(C)=(2a2-c2)/2a2
... or ... COS(C)= -c2/2a2
... or ... COS(C) = -0.67036

....so ....COS-1(0.67036) = 1.819905 rad
... or ... 104.2729 deg

end result: angle C = 104.2729 degrees.

I think this would yield a formula for calculating the angle for any given c of... Angle C in degrees = COS-1(-c2/18050 ) * 57.2957795 .... assuming that a and b will always be 95mm and fixed.

I think this is right, but not sure if there is a better way to do this.

Thanks for your response and any further assistance you might see fit to provide.

Charlie

Your method is correct - your answer is correct - except you made some intermediate arithmetic error.

Cos(C) = (-c2 + a2 + b2)/(2a*b) = (2a2 - c2)/(2a2) = -0.24654 [ ← a = b = 95 & c = 150]

C = 1.819902 rad = 104.2727°
 
Last edited by a moderator:
I do not see a way to do this problem w/o know c or C. Think of a compass where both legs are 95mm long. You can make the angle where the two legs join larger and smaller and the legs are both still 95mm long. Where ever the two legs terminate simply join those points for the 3rd side of the triangle. There are an infinite number of triangles that can be formed.

Another example of my not being clear. I will know what c is. The function would be something like this....

getAngle(int c) and return the angle of C based on that particular c.

I have a robotic arm. Think of the shoulder as been A, the Wrist as being B and the elbow as being C. The line a (segment AC) and and line b (segment BC) are both 95mm. I need to figure out what angle for C would be required to make the distance for c (segment AB) equal to some given amount...(I am testing with 150mm). So in this case the reach....line c (secment AB )would be 150 mm in length. So I need a function (formula) that would tell me what angle for C would give me a lengh of 150mm for c.

This function/formula would be give me the required angle for any specified value of c between 0 and 190 (not just 150)

I hope I haven't made it worse. I clearly am not much better at asking question than I am at trig.
 

Attachments

  • trigQuestion.jpg
    trigQuestion.jpg
    253.4 KB · Views: 0
Another example of my not being clear. I will know what c is. The function would be something like this....

getAngle(int c) and return the angle of C based on that particular c.

I have a robotic arm. Think of the shoulder as been A, the Wrist as being B and the elbow as being C. The line a (segment AC) and and line b (segment BC) are both 95mm. I need to figure out what angle for C would be required to make the distance for c (segment AB) equal to some given amount...(I am testing with 150mm). So in this case the reach....line c (secment AB )would be 150 mm in length. So I need a function (formula) that would tell me what angle for C would give me a lengh of 150mm for c.

This function/formula would be give me the required angle for any specified value of c between 0 and 190 (not just 150)

I hope I haven't made it worse. I clearly am not much better at asking question than I am at trig.
So your answer will always be C = COS-1[(2*95^2 -c^2)/(2*95^2)] assuming you always use 95 for a and b.
 
Sorry....I think this is right, but not sure if there is a better way to do this.

Thanks for your response and any further assistance you might see fit to provide.

Charlie
Hey Charlie,

Not that people worry about it much any more but a faster, and possibly cleaner, way to implement this is
x = asin(c^2 * HAI) + asin(c^2 * HAI)
if you have a good optimizing compiler. The (global?) value of HAI [half a inverse] would be 1/A/2 where A would be the (global?) value of a. If you don't have a good optimizing compiler, you might do
x = asin(c * c * A)
x = x + x
as addition is much faster than multiplication which is again much much faster than division with is faster than exponentiation. Note that, in one context, you are trading memory for speed.

Of course the above assumes b=a and they would be constant for the program.
 
Last edited:
So your answer will always be C = COS-1[(2*95^2 -c^2)/(2*95^2)] assuming you always use 95 for a and b.


Ok, I will work with that. I pretty much know what the angle should be....but won't have any confidence in what i do until I can get that result through a common function.

Thank you very much.
 
Ok, I will work with that. I pretty much know what the angle should be....but won't have any confidence in what i do until I can get that result through a common function.

Thank you very much.

See, I told you people don't much worry about speed and memory for computer programs now a days.
 
Whooo. That flew right past me.

Hey Charlie,

Not that people worry about it much any more but a faster, and possibly cleaner, way to implement this is
x = asin(c * HAI) + asin(c * HAI)
if you have a good optimizing compiler. The (global?) value of HAI [half a inverse] would be 1/A/2 where A would be the (global?) value of a. If you don't have a good optimizing compiler, you might do
x = asin(c * A)
x = x + x
as addition is much faster than multiplication which is again much much faster than division. Note that, in one context, you are trading memory for speed.

Of course the above assumes b=a and they would be constant for the program.

yes, they would be constant and equal.

You are way above my paygrade...but I will research and see what this means. I am working within the arduino IDE which I think is using the standard AVR compiler. I'm compiling for the Arbotix controller (atmega644p). I am finding out there is SOO MUCH to learn. Started by trying to understand how to use IK but found that my math skills are not adequate, so now I have two things to learn.....IK and better trig skills.
 

Attachments

  • Arm.jpg
    Arm.jpg
    86.3 KB · Views: 1
yes, they would be constant and equal.

You are way above my paygrade...but I will research and see what this means. I am working within the arduino IDE which I think is using the standard AVR compiler. I'm compiling for the Arbotix controller (atmega644p). I am finding out there is SOO MUCH to learn. Started by trying to understand how to use IK but found that my math skills are not adequate, so now I have two things to learn.....IK and better trig skills.

Note that your copy of my post contains the dumb mistake of c * A instead of the (corrected) c * c * A
 
I can only worry about those things I am equipped to deal with

See, I told you people don't much worry about speed and memory for computer programs now a days.
Ishuda, it is not that I am not worried about speed and memory...it has to do with taking problems in manageable chunks. First I need a grasp of what the problem is and then I can start to refine my tools and skills in using them. I fully intend to explore you suggestion, but I am still defining the problem
 
Top