ALGLIB는 수치분석 및 데이터 처리를 위한 라이브러리입니다.
우연히 알게 되었는데 차원배열분석 등에 유용하게 쓰이고 있다고 합니다.
배열의 데이터들 중 수치를 튀는 놈을 뭉개는 등의 처리가 가능하다고 합니다.
선형 대수: 행렬 연산, 선형 시스템 해법, 특이값 분해(SVD), 고유값 문제 등.
최적화: 제약 조건이 있는/없는 최적화, 비선형 least squares, 신경망 훈련 등.
통계 및 데이터 분석: 회귀 분석, 주성분 분석(PCA), 군집화 등.
보간 및 근사화: 다항식 보간, 스플라인 보간, 삼각 보간 등.
적분 및 미분: 수치 적분, 수치 미분 등.
특수 함수: 다양한 수학 함수의 구현.
무료버전
https://www.alglib.net/download.php
상용버전
https://www.alglib.net/commercial.php
각 버전별로 dll 을 다운로드하여 참조해서 사용하면 됩니다.
크로스플랫폼을 지원해서 C++ , C# , Java , Python , Delphi 등에서 사용이 가능하다고 합니다.
무료버전과 상용버전은 아래와 같은 차이가 있습니다.
무료 버전
- GPL 또는 개인/학술 라이센스에 따라 무료로 제공됨 +전체 수치 기능 제공
- 광범위한 알고리즘 최적화
- 단일 스레드
- 라이선스 계약은 대부분의 상용 응용 프로그램에 적합하지 않습니다.
상업용 버전
- 로열티 또는 배포 수수료가 없는 유연한 상용 라이센스 +광범위한 알고리즘 최적화
- 고성능 C++ 버전(SMP, 상업용 HPC 커널) +2개의 C# 버전 - 관리형 및 HPC 1개(네이티브 코드, SMP/SIMD) +상업적 지원 및 보증
속도를 생각한다면 무조건 상업용버전으로 써야 할 거 같습니다.
무료버전을 사용해 보려고 다운받아 압축파일을 보니 dll과 소스가 있습니다.
Blazor에서 사용해보려고 하고 있어서. NET7 Blazor WebAsembly 프로젝트 만들고
alglib400gpl_net5.dll 참조 걸어서 매뉴얼에 있는 함수를 실행시켜 보았는데 이상 없이 연산되어 결과가 나옵니다.
아래는 C# 매뉴얼입니다.
https://www.alglib.net/translator/man/manual.csharp.html
WordPress API - Post 쓰기 (0) | 2024.07.07 |
---|---|
WordPress API - Post 항목 가져오기 (0) | 2024.07.07 |
C# 필드 필수 처리 - required modifier (0) | 2024.06.11 |
C# String Interpolation 복수 라인 표현식 (0) | 2024.06.11 |
C# 리스트 패턴 (List Pattern) (0) | 2024.06.09 |