Re: Solving elliptic equation in IDL [message #36070] |
Tue, 19 August 2003 10:55 |
Stein Vidar Hagfors H[2]
Messages: 28 Registered: October 2002
|
Junior Member |
|
|
I would also recommend looking at dlmform:
http://www.astro.uio.no/~steinhh/idl/dlmform.html
"Haje Korth" <haje.korth@jhuapl.edu> writes:
> Mark,
> as far as I understand, you always need the C glue-code when working with
> FORTRAN in a DLM.This is the reason why I often still use the old-fashioned
> call_external. Here the wrapper in minimal and can be written in FORTRAN. I
> think there is an example in the external directory of the IDL installation.
>
> Cheers,
> Haje
>
> --
>
>
> "Mark Hadfield" <m.hadfield@niwa.co.nz> wrote in message
> news:bhp3fk$kah$1@newsreader.mailgate.org...
>> Hi guys
>>
>> I want to solve an elliptic equation on a rectangular portion of the
>> (x,y) plane, specifically
>>
>> L(A) = f(x,y)
>>
>> where A is an unknown, scalar-valued 2D array, L is the Laplacian
>> operator (d2/dx2 + d2/dy2) and the RHS (forcing) term is a function of
>> space only. A is specified at the boundary.
>>
>> This can be done with an elliptic equation solver, of the type that
>> can be found in many general-purpose mathematical libraries. However a
>> Google search has not uncovered any IDL code to do this. So I have two
>> questions:
>>
>> - Does anyone have or know of an IDL elliptic equation solver?
>>
>> - If I choose to solve the equation in Fortran (Compaq Visual
>> Fortran 6.6B, IMSL Fortran Library,IDL 6.0, Windows 2000), what is the
>> path of least resistance for passing data between Fortran and IDL? A
>> DLM? Can I call a Fortran subroutine directly from IDL or will I
>> need to write glue code in C?
>>
>> --
>> Mark Hadfield "Ka puwaha te tai nei, Hoea tatou"
>> m.hadfield@niwa.co.nz
>> National Institute for Water and Atmospheric Research (NIWA)
>>
>>
>
>
--
------------------------------------------------------------ --------------
Stein Vidar Hagfors Haugan
ESA SOHO SOC/European Space Agency Science Operations Coordinator for SOHO
NASA Goddard Space Flight Center, Tel.: 1-301-286-9028
Mail Code 682.3, Bld. 26, Room G-1, Cell: 1-240-354-6066
Greenbelt, Maryland 20771, USA. Fax: 1-301-286-0264
------------------------------------------------------------ --------------
|
|
|
Re: Solving elliptic equation in IDL [message #36095 is a reply to message #36070] |
Mon, 18 August 2003 09:00  |
mvukovic
Messages: 63 Registered: July 1998
|
Member |
|
|
Mark Hadfield <m.hadfield@niwa.co.nz> wrote in message news:<bhp3fk$kah$1@newsreader.mailgate.org>...
> Hi guys
ahem, guys -> folks may be more inclusive :-)
>
> I want to solve an elliptic equation on a rectangular portion of the
> (x,y) plane, specifically
>
> L(A) = f(x,y)
>
> where A is an unknown, scalar-valued 2D array, L is the Laplacian
> operator (d2/dx2 + d2/dy2) and the RHS (forcing) term is a function of
> space only. A is specified at the boundary.
>
> This can be done with an elliptic equation solver, of the type that
> can be found in many general-purpose mathematical libraries. However a
> Google search has not uncovered any IDL code to do this. So I have two
> questions:
>
> - Does anyone have or know of an IDL elliptic equation solver?
>
> - If I choose to solve the equation in Fortran (Compaq Visual
> Fortran 6.6B, IMSL Fortran Library,IDL 6.0, Windows 2000), what is the
> path of least resistance for passing data between Fortran and IDL? A
> DLM? Can I call a Fortran subroutine directly from IDL or will I
> need to write glue code in C?
The wayyy simplest, for me, (and ugly as hell) was to write a
stand-alone fortran program, and communicate via files. The fortran
program was called using the spawn command.
Ugly, but worked quickly.
Mirko
|
|
|
Re: Solving elliptic equation in IDL [message #36097 is a reply to message #36095] |
Mon, 18 August 2003 04:51  |
Haje Korth
Messages: 651 Registered: May 1997
|
Senior Member |
|
|
Mark,
as far as I understand, you always need the C glue-code when working with
FORTRAN in a DLM.This is the reason why I often still use the old-fashioned
call_external. Here the wrapper in minimal and can be written in FORTRAN. I
think there is an example in the external directory of the IDL installation.
Cheers,
Haje
--
"Mark Hadfield" <m.hadfield@niwa.co.nz> wrote in message
news:bhp3fk$kah$1@newsreader.mailgate.org...
> Hi guys
>
> I want to solve an elliptic equation on a rectangular portion of the
> (x,y) plane, specifically
>
> L(A) = f(x,y)
>
> where A is an unknown, scalar-valued 2D array, L is the Laplacian
> operator (d2/dx2 + d2/dy2) and the RHS (forcing) term is a function of
> space only. A is specified at the boundary.
>
> This can be done with an elliptic equation solver, of the type that
> can be found in many general-purpose mathematical libraries. However a
> Google search has not uncovered any IDL code to do this. So I have two
> questions:
>
> - Does anyone have or know of an IDL elliptic equation solver?
>
> - If I choose to solve the equation in Fortran (Compaq Visual
> Fortran 6.6B, IMSL Fortran Library,IDL 6.0, Windows 2000), what is the
> path of least resistance for passing data between Fortran and IDL? A
> DLM? Can I call a Fortran subroutine directly from IDL or will I
> need to write glue code in C?
>
> --
> Mark Hadfield "Ka puwaha te tai nei, Hoea tatou"
> m.hadfield@niwa.co.nz
> National Institute for Water and Atmospheric Research (NIWA)
>
>
|
|
|