• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 572
  • Last Modified:

3D refraction of ray / vector operations

Dear experts,

  I've been working at a problem for a while.  If anyone can help, I'd really appreciate it.  I'm working on refraction of an ultrasound beam as it crosses a planar interface between a Rexolite wedge and a steel sample block.  I've got it mostly worked out, but am struggling with a (the) key parameter:  How to define the (3D) vector after refraction across the plane.  I can get the angle with relation to the plane-normal by Snell's Law, and I'm assuming the vector will be in the plane defined by the normal and the incident wave, and the line will contain the point at which it intersects the plane.  This seems like it should be easy given the information I've already calculated, but I just can't seem to get the keystone in the top of the arch.  20140227-BeamPathWork-CloseUp.pdf  
Can anyone help?

Thank You,
-Matt
0
risingedge
Asked:
risingedge
  • 6
  • 6
1 Solution
 
ozoCommented:
If your unit incident ray is i and your unit normal is n,
and the ratio of wavelength between the two media is r,
then your refracted ray will be
ri+n(rn·i-sqrt(1-r^2+(rn·i)^2)))
0
 
risingedgeAuthor Commented:
You are good.20140227-BeamPathWork-CloseUp-2.pdf

Thank You, now I can go to sleep.
0
 
risingedgeAuthor Commented:
Sorry, I have a follow-up:  Does this equation have a name?  I wanted to look more into it to see if there were any assumptions (small-angle, etc.).  I'm getting angles that differ slightly from direct Snell results.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
ozoCommented:
If the number in the square root is negative, you'd have total internal reflection.
What are the numbers you are using when you get slightly different angles?
0
 
risingedgeAuthor Commented:
If I try the simple case:
i=<0,0,1>
n=<1/Sqrt[2],0,1/Sqrt[2]>
r=0.73

I get <-0.28445, 0., 1.01465> which is 29.3 degrees from -n

If I use, Snell's Law:
Theta2 = 45 Degree;
Theta1 = ArcSin[Sin[Theta2]*0.73] = 31.1

I'm sure it's user error, but I'm searching for it.
Thanks again!
-Matt
0
 
ozoCommented:
sorry, I used r and n the wrong way, try
ri-n(rn·i-sqrt(1-r^2+(rn·i)^2)))
0
 
risingedgeAuthor Commented:
Hmm... That gives the right angle, but looks to be the mirror image across the refraction plane (i.e. reflected).  BeamPathWork-3-copy.pdf

Do you have a source, or are you deriving?

Thanks for the help!
0
 
ozoCommented:
Looks like I reversed the sign of i too.
0
 
risingedgeAuthor Commented:
I'm sorry, can you spell it out for me?  I tried changing all of the i's to (-i)'s, and a few other permutations, but I failed.
0
 
ozoCommented:
i=<0,0,1>
n=<0.707106781186548,0,0.707106781186547>
r=0.73
ir-n(ir·n-sqrt(1-r^2+(ir·n)^2)))=<0.240619517519044,0,0.970619517519044>
-ir-n(-ir·n-sqrt(1-r^2+(-i·rn)^2)))=<0.970619517519044,0,0.240619517519044>
Is this what you got, and does it make sense with your conventions?
0
 
risingedgeAuthor Commented:
Vectors
I really do appreciate your considerations.
0
 
ozoCommented:
I'm not sure what convention to use, in http:#a39894769, the norm was pointing with the incident ray, but in http:#a39896563, the norm is pointing against the incident ray, so the sign convention changes.

With
i={0,0,1}
n={0.70710678118655,0,-0.70710678118655}
r=0.73
the ray that makes sense to me when I draw it is
ri - n(ri·n + sqrt(1 - r^2 + (ri·n)^2)) = {-0.240619517519044,0,0.970619517519044}
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

  • 6
  • 6
Tackle projects and never again get stuck behind a technical roadblock.
Join Now