LAPACK построен на базе BLAS? Допустим имеем обёртку вокруг BLAS на python (т.е. имеем numpy), можем ли руками написать ф-ии из LAPACK?(по минимуму мне надо eig, svd.) я знаю про numpy.linalg.svd и numpy.linalg.eig так же там можно посмотреть сорцы, которые показывают в случае svd The decomposition is performed using LAPACK routine _gesdd , а в случае eig implemented using the _geev LAPACK routines но там правда есть ссылка на References ---------- G. Strang, *Linear Algebra and Its Applications*, 2nd Ed., Orlando, FL, Academic Press, Inc., 1980, Various pp. Для чего всё это нужно: переписать стандартные функции из numpy (svd и eig) с использованием numpy.memmap и cudamat (тот же blas обертка вокруг cublas как я понимаю). Так же для поддержки больших матриц можно использовать блочное перемножение матриц (хотя может еще какие то ф-ии blas придется переделать? и я чего то не учёл?) Что точнее нужно: может быть есть lapack собранный только из вызовов blas? (так ли это и возможно ли это?) возможно есть примеры на других языках? (т.к. нет никакого желания разбираться в фортран коде и ф-иях с названиями типа dgemm) какие книги по линейной алгебре(для инженеров скорее, а не для математиков) лучше читать, которые более близки к реальности и рассказывают о подводных камнях(например вырожденные случаи (типа сингулярная матрица) или там потеря точности (типа таким методом никто не считает, а вот более точный) и т.д.), опять же учитывая, что blas и обёртки у нас уже есть и требуется написать только высокоуровневые алгоритмы.
Да, LAPACK построен на базе BLAS, и использование numpy с обёрткой вокруг BLAS для написания функций из LAPACK возможно. Однако, написание этих функций вручную может быть сложным и требует понимания работы с линейной алгеброй на более глубоком уровне.
Что касается книг по линейной алгебре для инженеров, которые рассказывают о подводных камнях и проблемах, связанных с численными методами, можно порекомендовать следующие ресурсы:
«Numerical Linear Algebra» автора Lloyd N. Trefethen и David Bau III, которая предоставляет обзор численных методов линейной алгебры и их применения в инженерных задачах.
«Applied Numerical Linear Algebra» автора James W. Demmel, которая фокусируется на применении численных методов линейной алгебры в реальных приложениях и включает кейсы из инженерной практики.
«Matrix Computations» автора Gene H. Golub и Charles F. Van Loan, которая предоставляет детальный обзор методов матричных вычислений и их применения в различных областях.
Чтобы изучить и понять, как работают методы из LAPACK, такие как SVD и Eigen decomposition, также можно рекомендовать изучить документацию к LAPACK и ресурсы, где представлены примеры использования этих методов на других языках программирования, таких как C++ или MATLAB.
Да, LAPACK построен на базе BLAS, и использование numpy с обёрткой вокруг BLAS для написания функций из LAPACK возможно. Однако, написание этих функций вручную может быть сложным и требует понимания работы с линейной алгеброй на более глубоком уровне.
Что касается книг по линейной алгебре для инженеров, которые рассказывают о подводных камнях и проблемах, связанных с численными методами, можно порекомендовать следующие ресурсы:
«Numerical Linear Algebra» автора Lloyd N. Trefethen и David Bau III, которая предоставляет обзор численных методов линейной алгебры и их применения в инженерных задачах.
«Applied Numerical Linear Algebra» автора James W. Demmel, которая фокусируется на применении численных методов линейной алгебры в реальных приложениях и включает кейсы из инженерной практики.
«Matrix Computations» автора Gene H. Golub и Charles F. Van Loan, которая предоставляет детальный обзор методов матричных вычислений и их применения в различных областях.
Чтобы изучить и понять, как работают методы из LAPACK, такие как SVD и Eigen decomposition, также можно рекомендовать изучить документацию к LAPACK и ресурсы, где представлены примеры использования этих методов на других языках программирования, таких как C++ или MATLAB.