My Fortran Projects
All projects listed here are designed to be used as fpm (Fortran package manager) packages. Each library provides specific functionality and can be easily integrated into your Fortran projects using fpm.
Below is a brief overview of each project:
ForCAD
ForCAD is A Fortran library for Geometric Modeling using NURBS (Non-Uniform Rational B-Splines).
fpm Dependency:
[dependencies] forcad = { git = "https://github.com/gha3mi/forcad.git" }
ForCompile
ForCompile is a Fortran library to access the Compile Explorer API.
fpm Dependency:
[dependencies] forcompile = { git = "https://github.com/gha3mi/forcompile.git" }
ForMatmul
ForMatmul is a Fortran library that overloads the matmul function to enable efficient matrix multiplication with coarray.
fpm Dependency:
[dependencies] formatmul = { git = "https://github.com/gha3mi/formatmul.git" }
ForDot
ForDot is a Fortran library that overloads the dot_product function to enable efficient dot product with/without coarray.
fpm Dependency:
[dependencies] fordot = { git = "https://github.com/gha3mi/fordot.git" }
ForOpenAI
ForOpenAI is a Fortran library for OpenAI API.
fpm Dependency:
[dependencies] foropenai = { git = "https://github.com/gha3mi/foropenai.git" }
ForSVD
ForSVD is a Fortran library for singular value decomposition (SVD) calculation, low-rank approximation, and image compression.
fpm Dependency:
[dependencies] forsvd = { git = "https://github.com/gha3mi/forsvd.git" }
ForPCA
ForPCA is a Fortran library for principal component analysis (PCA).
fpm Dependency:
[dependencies] forpca = { git = "https://github.com/gha3mi/forpca.git" }
ForEig
ForEig is a Fortran library for eigenvalue and eigenvector calculations.
fpm Dependency:
[dependencies] foreig = { git = "https://github.com/gha3mi/foreig.git" }
ForClust
ForClust allows you to manage and control a Linux system, such as adjusting the settings of the CPU and other components.
fpm Dependency:
[dependencies] forclust = { git = "https://github.com/gha3mi/forclust.git" }
ForSolver
ForSolver provides linear and nonlinear solvers.
fpm Dependency:
[dependencies] forsolver = { git = "https://github.com/gha3mi/forsolver.git" }
ForDiff
ForDiff is a Fortran library for numerical differentiation.
fpm Dependency:
[dependencies] fordiff = { git = "https://github.com/gha3mi/fordiff.git" }
ForTime
ForTime is a Fortran library for measuring elapsed time, CPU time, OMP time, and MPI time.
fpm Dependency:
[dependencies] fortime = { git = "https://github.com/gha3mi/fortime.git" }
ForLapack
ForLAPACK is a Fortran library for LAPACK-related operations.
fpm Dependency:
[dependencies] forlapack = { git = "https://github.com/gha3mi/forlapack.git" }
ForBlas
ForBLAS is a Fortran library for BLAS-related operations.
fpm Dependency:
[dependencies] forblas = { git = "https://github.com/gha3mi/forblas.git" }
ForImage
ForImage is a Fortran library for PNM file processing and image editing.
fpm Dependency:
[dependencies] forimage = { git = "https://github.com/gha3mi/forimage.git" }
ForInv
ForInv is a Fortran library for calculating pseudoinverse using various methods.
fpm Dependency:
[dependencies] forinv = { git = "https://github.com/gha3mi/forinv.git" }
ForDebug
ForDebug is a Fortran library designed for debugging Fortran code, especially within pure procedures.
fpm Dependency:
[dependencies] fordebug = { git = "https://github.com/gha3mi/fordebug.git" }
ForBenchmark
ForBenchmark is a Fortran library for benchmarking (with support for coarrays).
fpm Dependency:
[dependencies] forbenchmark = { git = "https://github.com/gha3mi/forbenchmark.git" }
ForUnitTest
ForUnitTest is a Fortran library for unit testing.
fpm Dependency:
[dependencies] forunittest = { git = "https://github.com/gha3mi/forunittest.git" }