From: Arjen M. <arj...@de...> - 2010-10-22 07:59:39
|
Hi, I have been studying the source code for the Fortran bindings and the aribtrary storage facility and my conclusion is: - The bindings will benefit internally because we do no longer have to create a transposed array in the C fashion. - I can create a binding for the most flexible functions (plfcont and plfshade(s) so that a user can supply his/her own data structure. It will take some interface juggling in Fortran 90/95, as that is more strict than FORTRAN 77. (Some technical details are involved here) I first thought it would be a flexibility that would "never" be used in practice (2D arrays being the most common form of storing such data in Fortran), but consider this: We do not have to store a complete set of data! Instead we could also use the retrieval function to get the value of a function - something along these lines: real(PLFLT) function f(i, j, params ) integer :: i, j real(PLFLT) :: params real(PLFLT) :: x, y ... compute x and y from i and j and params f = x**2 + y**2 end function f or to transform the data: real(PLFLT) function logf(i, j, data ) integer :: i, j type(userdata) :: data logf = log(data%value(i,j)) end function logf (I am not quite sure how to transfer the array dimensions yet - hence the impromptu derived type) Regards, Arjen On 2010-10-12 17:55, Hazen Babcock wrote: > Arjen Markus wrote: >> Hi David, Hazen, >> >> I will have a look at propagating those functions to FORTRAN 77 and >> Fortran 90/95. >> >> Regards, >> >> Arjen > > Thank you both for volunteering :). > > -Hazen > > DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. |