From: "Richard Wang" <[log in to unmask]> Sent: Wednesday, January 11, 2006 12:28 PM > Thanks . It works now. But I thought all you do here are 1) add > implicit none 2) move function into the program 3) use the word > 'contains' In addition, you should use either "DOUBLE PRECISION" instead of REAL*8 (which is not portable), or integer, parameter :: dp = selected_real_kind(1.0d0) real (kind=dp) :: e and so on.