2016-12-22 6 views
0

파이썬을 사용하여 데이터에 스플라인을 맞추려고합니다. 그런 다음 정기적으로 사용하기 위해 매듭과 계수 집합을 C 프로그램으로 내보낼 수 있어야합니다. 스플라인에 맞게 scipy.interpolate.SmoothBivariateSpline을 사용하고 get_coeffs() 및 get_knots() 메서드를 사용하여 매듭과 계수의 복사본을 만듭니다.Scipys SmoothBivariateSpline에 의해 주어진 매듭과 계수 세트에서 스플라인 값을 계산하는 방법

궁극적으로 C 환경에서 스플라인을 사용할 수 있도록 평가 메소드 (ev())를 다시 작성해야합니다. 누구든지이 방법을 작성하는 방법에 대한 리소스를 안내해 줄 수 있습니까? 코드를 통해 상대

답변

0

, dfitpack.bispev에 이변 FITPACK 기반 스플라인 대리자의 평가, https://github.com/scipy/scipy/blob/master/scipy/interpolate/fitpack2.py#L844

후자 함수 https://github.com/scipy/scipy/blob/master/scipy/interpolate/fitpack/fpbisp.f

를 호출하는 같은 이름의 포트란 루틴 https://github.com/scipy/scipy/blob/master/scipy/interpolate/fitpack/bispev.f의 일 f2py 래퍼 https://github.com/scipy/scipy/blob/master/scipy/interpolate/src/fitpack.pyf#L352이며

하나 잡았다는 최종 매듭 get_knotsget_coefs에 의해 처리됩니다 정확히 어떻게 조심해야합니다 https://github.com/scipy/scipy/blob/master/scipy/interpolate/fitpack2.py#L780

이 모든 내용은 Dierckx의 모든 책에서 자세히 논의되었을 것입니다. 아니면 계산 루틴은 드 보어의 2D 체계에 대한 상당히 일반적인 일반화처럼 보입니다. 악마는 세부 사항에 있습니다.