> Given > 3 points on a plane, how would one use Python to calculate the
> surface area of that plane. I'm assuming numpy would be used because
> it's going to run quite frequently.
>
> To give more of an explaination, I'm trying to develop an educational
> program that is adding mathematics to my existing attempt to merge
> science(geology) and programming. Students will take coordinate data
> (either in lat/lon or UTM format) and enter the data into their
> programs to manipulate it, so the points will probably be in lat/lon
> format.
>
> If a program already exisits with such a solution, I wouldn't mind
> reading the code. Otherwise, I'd like a math guru's opinion on
> well-formed solutions.
>
Sorry, my reaction is a little bit late.
When the area is small compared with R*R (R = 6000 km, radius or the
earth),
you may consider a polygon in a plane (maps are based on this concept).
The area of a polygon P0, P1, P2, ..., Pn with P0 = Pn, can be
calculated
with a simple algorithm:
A = ( sum from i=0 to n-1 (y[i+1] - y[i])*(x[i+1] + x[i]) ) / 2
where (x[i], y[i]) represents the coordinates of point P with index i.
All you have to do is translate lat/lon in rectangular coordinates.
Girard's theorem:
A = sum from i=1 to n (theta[i]) - (n-2) * pi, (R=1)
is for relative small area's rather sensitive for errors in the theta's.
Jaap Spies,
Institute of Technology
Hogeschool Drenthe