I'm going crazy

  • Thread starter sid_galt
  • Start date
501
0

Main Question or Discussion Point

[tex]
A=-[(x_i-X_j)cos\theta_j + (y_i-Y_J)sin\theta_j]
[/tex]
[tex]
B = (x_i-X_j)^2+(y_i-Y_j)^2
[/tex]
[tex]
E=(B-A^2)^{1/2}=(x_i-X_j)sin\theta_j+(y_i-Y_j)\theta_j
[/tex]

I implemented this in C++ as follows

A = -(p_c(0)(i) - p_v(0)(j))*cos(angle(j)) - (p_c(1)(i) - p_v(1)(j))*sin(angle(j))

B = (p_c(0)(i) - p_v(0)(j))*(p_c(0)(i) - p_v(0)(j)) + (p_c(1)(i) - p_v(1)(j))*(p_c(1)(i) - p_v(1)(j))

E=(p_c(0)(i) - p_v(0)(j))*sin(angle(j)) + (p_c(1)(i) - p_c(1)(j))*cos(angle(j))

F= sqrt(B-A*A)

(All parantheses instead of square brackets in arrays to avoid HTML encoding)
where
p_c(0)(i) =[tex]x_i[/tex]
p_c(1)(i) = [tex]y_i[/tex]
p_v(0)(j) = [tex]X_j[/tex]
p_v(1)(j) = [tex]Y_j[/tex]
angle(j) = [tex]\theta_j[/tex]

Well, here's the deal. Mathematically
[tex]E=(B-A^2)^{1/2}=(x_i-X_j)sin\theta_j+(y_i-Y_j)\theta_j[/tex]

However in C++, I am getting different values for E and F in C++ when mathematically they are the same. I am going insane.
Please help
 
Last edited:

Answers and Replies

501
0
Hey guys, I really need help.
 
dduardo
Staff Emeritus
1,894
3
Check that your not truncating values. Type-casting is very important in these situtations.
 
501
0
I don't think so because
1. All the quantities are in double
2. The differences are too high, sometimes as high as -1
 
dduardo
Staff Emeritus
1,894
3
I would try breaking up the equation and testing to see if your getting expected values.
 
488
0
sid_galt said:
Well, here's the deal. Mathematically
[tex]E=(B-A^2)^{1/2}=(x_i-X_j)sin\theta_j+(y_i-Y_j)\theta_j[/tex]
[tex]E=(B-A^2)^{1/2}=|(x_i-X_j)\sin\theta_j-(y_i-Y_j)\cos\theta_j|[/tex]
 
501
0
chronon said:
[tex]E=(B-A^2)^{1/2}=|(x_i-X_j)\sin\theta_j-(y_i-Y_j)\cos\theta_j|[/tex]
I tried fabs and fabsf on E. The differences are still there. I am using Dev C++ 4 as the compiler. Could there be something wrong with it?
 
es
70
0
I just tried doing the math in my head but I don't think the equality holds for theta_j=0

E=0
F=abs(y_i-Y_i)

right?

Edit: Wrong. I think the second cosine just fell off when you posted the summary. If the cosine is there, and the absolute values are in place, I think the equality holds.
 
Last edited:

Related Threads for: I'm going crazy

Replies
1
Views
2K
  • Last Post
Replies
1
Views
2K
Replies
7
Views
5K
  • Last Post
2
Replies
45
Views
5K
  • Last Post
Replies
20
Views
8K
Replies
1
Views
2K
  • Last Post
Replies
16
Views
2K
Replies
4
Views
8K
Top