В настоящее время я пытаюсь оптимизировать некоторый код, который я написал на python, переписав его как расширение C++. Однако код использует не только ndarrays, но и библиотеку numpy.linalg для поиска обратной матрицы. Я нашел, как я могу использовать ndarrays в своем расширении, но не смог ничего найти о том, как я все еще могу использовать библиотеку numpy.linalg. Есть ли способ сделать это или мне нужно вызвать в BLAS/etc. или даже написать свою собственную функцию для этого?
Заранее спасибо.
Кажется довольно сложным получить прямой доступ к подпрограммам NumPy C. Если вы посмотрите на umath_linalg.c.src, то увидите, что это длинный файл шаблонного кода C, который позже расширяется, чтобы охватить различные типы данных для каждой функции. В случае invдирективы выше предполагает, что соответствующими функциями LAPACK являются sgesv, dgesv, cgesv и zgesv.






В С++ используйте Eigen++.