Fortran - Devuelve una función anónima desde la subrutina
Estoy tratando de generalizar una llamada de función desde una subrutina. Así que mi idea es algo como esto.
if (case1) then
call MainSubroutine1(myFun)
elseif (case2)
call MainSubroutine2(myFun)
end if
do i = 1,4
data = myFun(i)
end do
Me doy cuenta de que esto es algo vago, pero no estoy seguro de si es posible.
Gracias,
Juan
editar 01/01/14 7:57 a.m.
Lo siento por la vaga forma en que lo expresé. Estaba pensando algo similar a lo que hizo @haraldki, pero esperaba poder definir una función anónima dentro de MainSubroutine1 y MainSubroutine2 y transferir esa definición al código principal.
Esto se debe a que myFun depende de una distribución diferente estirada (Gaussian y Fermi-Dirac) y no quiero tener una función que solo llame a una función con un disparo constante.
es posible?
Gracias de nuevo.
Juan