[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference rusure::math

Title:Mathematics at DEC
Moderator:RUSURE::EDP
Created:Mon Feb 03 1986
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:2083
Total number of notes:14613

560.0. "The locator problem" by MODULE::FONTAINE (charlie ) Fri Aug 08 1986 17:21

    I have what I think is an interesting practical use for the 
    Hyperbola.  
    
    Consider a cubic room, with sensors centered on on each face.
    If we assume that each sensor pair is an axis of an arbitrary 
    dimensional system, and that some where inside the room an 
    spontaneous event takes place, and the sensors can EXACTLY
    measure the difference in time between the detections of the 
    event in question, how do you calculate the location of the 
    event in three dimensional space?
    
    I can show that the intersection of the three conics of reveloution
    formed by the hyperbolae formed by the the event point on a 
    plane passing through the point and the axis of the hyperbola
    is unique.
    
    I have tried to use the equations which define the difference in
    directed distances between the event and the foci, to determine
    the cordinates of the event, using the previously defined differences
    with out sucess.

    Here is a Maple program which I am attempting to use to solve this
    problem, Hyp2 generates the difference values, Hyp3 tries to reverse
    engineer the answer,  Help!!!!!!!!!!
    
    
#File name  Mxzlpx::[fontaine]Hyp2.
# created aug 5, 86.
# Maple program for evaluating delta times for the 
#
# The dimensions of the room are 20 units on each side,
# the sensors are on in the center of each face
# 

x1 :=  0;
y1 := 10;
z1 :=  0;

x2 :=  0;
y2 :=-10;
z2 :=  0;

x3 := 10;
y3 :=  0;
z3 :=  0;

x4 :=-10;
y4 :=  0;
z4 :=  0;

x5 :=  0;
y5 :=  0;
z5 := 10;

x6 :=  0;
y6 :=  0;
z6 :=-10;

xe :=  3;
ye :=  4;
ze :=  5;

s1 := sqrt( ((x1-xe)^2) + ((y1-ye)^2) + ((z1-ze)^2) );
s2 := sqrt( ((x2-xe)^2) + ((y2-ye)^2) + ((z2-ze)^2) );
s3 := sqrt( ((x3-xe)^2) + ((y3-ye)^2) + ((z3-ze)^2) );
s4 := sqrt( ((x4-xe)^2) + ((y4-ye)^2) + ((z4-ze)^2) );
s5 := sqrt( ((x5-xe)^2) + ((y5-ye)^2) + ((z5-ze)^2) );
s6 := sqrt( ((x6-xe)^2) + ((y6-ye)^2) + ((z6-ze)^2) );

d1 := (s1 - s2);
d3 := (s3 - s4);
d5 := (s5 - s6);

evalf (d1);
evalf (d3);
evalf (d5);

# d1, d3, d5, are the differences in the directed distances from the event
# to the foci of each axis.

# File name  mzxlpx::[fontaine]Hyp3.
# created aug 5, 86.
# Maple program for evaluating delta times for the 
#
# The dimensions of the room are 20 units on each side,
# the sensors are on in the center of each face
# 

readlib (simplpow):
readlib (simplsqrt):

x1 :=  0:
y1 := 10:
z1 :=  0:

x2 :=  0:
y2 :=-10:
z2 :=  0:

x3 := 10:
y3 :=  0:
z3 :=  0:

x4 :=-10:
y4 :=  0:
z4 :=  0:

x5 :=  0:
y5 :=  0:
z5 := 10:

x6 :=  0:
y6 :=  0:
z6 :=-10:

Xe :=  3:
Ye :=  4:
Ze :=  5:


# answers contains the calculated values for d[1,3,5]
#  read answers;

d1 := evalf(70**(1/2)-230**(1/2),2):
d3 := evalf(90**(1/2)-210**(1/2),2):
d5 := evalf(50**(1/2)-250**(1/2),2):


s1 := simplsqrt( ((x1-xe)^2) + ((y1-ye)^2) + ((z1-ze)^2) ):
s2 := simplsqrt( ((x2-xe)^2) + ((y2-ye)^2) + ((z2-ze)^2) ):
s3 := simplsqrt( ((x3-xe)^2) + ((y3-ye)^2) + ((z3-ze)^2) ):
s4 := simplsqrt( ((x4-xe)^2) + ((y4-ye)^2) + ((z4-ze)^2) ):
s5 := simplsqrt( ((x5-xe)^2) + ((y5-ye)^2) + ((z5-ze)^2) ):
s6 := simplsqrt( ((x6-xe)^2) + ((y6-ye)^2) + ((z6-ze)^2) ):


# by definition  d1 is the difference in the slant ranges, s1 and s2,
# etc.
# d1 = (s1 - s2), d3 := (s3 - s4), d5 := (s5 - s6)
#

D1 := evalfmap (s1-s2):
D3 := evalfmap (s3-s4):
D5 := evalfmap (s5-s6):

# save the answers in a sepporate file
writeto (answers):

#solve the defining equations for the missing terms, xe,ye,ze the location
#of the event.
        
solve ( { (D1)^2=(d1)^2, (D3)^2=(d3)^2, (D5)^2=(d5)^2 }, {xe,ye,ze} ):

print (xe,ye,ze);

er1 = evalf (Xe-xe);
er3 = evalf (Ye-ye);
er5 = evalf (Ze-ze);

quit;

    
    
    
    
    
T.RTitleUserPersonal
Name
DateLines
560.1COMMENTS ON THE LOCATOR PROBLEM SLOUTIONMODULE::FONTAINEcharlie Fri Aug 08 1986 18:0215
    Regarding the locator problem, here is what happens when I try
    to solve for xe, ye, and ze. Maple comes back and says there is
    no sloution.  It finds that there are three equations, one each
    for xe, ye, and ze. and the equation is of the form
    
      20xe = dn
    where e is the value of one coordinate of the event and dn is the
    difference in directed distances.
    
    For any one interested, I have Answers.wrap, and locatworld
    readable on MXZLPX::  NODE # 6479 
    
    
    
    
560.2CLT::GILBERTeager like a childFri Aug 08 1986 19:0214
One approach to solving the problem is by successive approximation.

Choose a point inside the region.  Compute the differences between the
distances from that point and the points on the walls.  Compute the
partial derivatives (with respect to x, y, and z) of the difference
of distances, evaluated at that point.  Find the differences between
the computed differences and the calculated differences (I call this
the double difference below).  Use the partials and double differences
to give three linear equations in three unknowns (this is easily solved)
that specify by how much to move the point top make the double differences
zero.  Adjust the position of the point by this much and repeat.

It looks painful, but finding a closed solution to the original problem
appears to be impossible.