5
This scipy documentation page는 상태 모듈에 사용 포트란 파이썬 콜백을 노출시키는 방법F2Py 약
[콜백 함수 또한 명시 모듈에서 설정 될 수있다. 그런 다음 인수 목록의 함수를 포트란 함수로 전달할 필요는 없습니다. 파이썬 콜백 함수를 호출하는 Fortran 함수 자체가 다른 Fortran 함수에 의해 호출되는 경우에는이 방법이 바람직 할 수 있습니다.
그러나 나는 이것이 어떻게 수행 될지 예를 찾을 수 없습니다.
test.f :
subroutine test(py_func)
use iso_fortran_env, only stdout => output_unit
!f2py intent(callback) py_func
external py_func
integer py_func
!f2py integer y,x
!f2py y = py_func(x)
integer :: a
integer :: b
a = 12
write(stdout, *) a
end subroutine
call_test.py :
import test
def func(x):
return x * 2
test.test(func)
다음 명령을 사용하여 컴파일 (인텔 컴파일러
는 다음 포트란/파이썬 조합을 고려) :
,python f2py.py -c test.f --fcompiler=intelvem -m test
나는 서브 루틴 test
또는 다른 포트란 파일의 다른 서브 루틴의 내부에서 함수를 호출 할 수 있도록, 모듈의 형태로 전체 포트란 프로그램 func
을 노출하기 위해 수행해야 할 것입니다 어떤 변화가 프로젝트?
여기에 도움을 모듈의 코드를합니까 : 나는 모든 파일/기능에 다음과 같은 선언하지 않고도 호출 할 수 있도록 AS를
옆으로, 그때 내가 그것을 사용하는 서브 루틴에
py_func
포장 ? https://code.google.com/p/f2py/wiki/FAQ2ed 파이썬 모듈인지 포트란 모듈인지 조금 혼란 스럽지만 새 모듈이 만들어진 것처럼 보입니다. –죄송합니다,이 질문에 대한 답변을 추가하는 것을 잊어 버렸습니다. 귀하의 의견은 나에게 상기시켜주었습니다. 아래를 참조하십시오. – JimmidyJoo