├── docs
├── _doxygen
│ ├── html
│ │ └── .nojekyll
│ ├── LOGO.png
│ └── VM2D-Paper.pdf
├── _static
│ ├── LOGO.png
│ └── authors
│ │ ├── Kobzar.jpg
│ │ ├── Ryatina.jpg
│ │ ├── Sokol.jpg
│ │ ├── Gumirova.jpg
│ │ ├── Izmailova.jpg
│ │ ├── Kolganova.jpg
│ │ ├── Shcheglov.jpg
│ │ ├── Soldatova.jpg
│ │ ├── Marchevsky.jpg
│ │ ├── Serafimova.jpg
│ │ └── Serebrovskaya.jpg
├── index.rst
├── index-ru.rst
├── 05_run-eng.rst
└── 05_run.rst
├── src
├── VMlib
│ ├── AirfoilGeometry
│ │ ├── AirfoilGeometry.cpp
│ │ └── AirfoilGeometry.h
│ └── CMakeLists.txt
├── VMcuda
│ ├── knn
│ │ ├── knn.cu
│ │ └── knn.cuh
│ ├── intersection
│ │ ├── lbvh
│ │ │ ├── query.cuh
│ │ │ └── utility.cuh
│ │ ├── intersection.cuh
│ │ └── lbvh.cuh
│ ├── GPU
│ │ └── ShiftKernels
│ │ │ └── IncludeKer.cu
│ ├── CMakeLists.txt
│ └── operations
│ │ └── types.cuh
└── VM2D
│ ├── Wake2D
│ ├── knnOld.zip
│ └── knnCPU-new.h
│ ├── Gmres2D
│ └── Gmres2D.cpp
│ └── CMakeLists.txt
├── include
├── Eigen
│ ├── Eigen
│ ├── src
│ │ ├── Core
│ │ │ ├── util
│ │ │ │ ├── NonMPL2.h
│ │ │ │ ├── ReenableStupidWarnings.h
│ │ │ │ └── ReshapedHelper.h
│ │ │ ├── functors
│ │ │ │ └── TernaryFunctors.h
│ │ │ ├── arch
│ │ │ │ ├── HIP
│ │ │ │ │ └── hcc
│ │ │ │ │ │ └── math_constants.h
│ │ │ │ ├── AVX512
│ │ │ │ │ └── TypeCasting.h
│ │ │ │ ├── Default
│ │ │ │ │ ├── Settings.h
│ │ │ │ │ └── ConjHelper.h
│ │ │ │ └── NEON
│ │ │ │ │ └── MathFunctions.h
│ │ │ ├── DiagonalProduct.h
│ │ │ └── SelfCwiseBinaryOp.h
│ │ ├── misc
│ │ │ ├── lapacke_mangling.h
│ │ │ └── RealSvd2x2.h
│ │ ├── SparseCore
│ │ │ ├── SparseFuzzy.h
│ │ │ └── SparseRedux.h
│ │ └── SparseLU
│ │ │ └── SparseLU_Utils.h
│ ├── Dense
│ ├── StdList
│ ├── StdDeque
│ ├── StdVector
│ ├── Householder
│ ├── Sparse
│ ├── Jacobi
│ ├── QtAlignedMalloc
│ ├── MetisSupport
│ ├── PardisoSupport
│ ├── SPQRSupport
│ ├── SparseQR
│ ├── SparseCholesky
│ ├── Cholesky
│ ├── QR
│ ├── UmfPackSupport
│ ├── KLUSupport
│ ├── LU
│ ├── SVD
│ ├── PaStiXSupport
│ ├── SparseLU
│ ├── Eigenvalues
│ ├── CholmodSupport
│ ├── Geometry
│ └── IterativeLinearSolvers
└── unsupported
│ ├── test
│ ├── FFT.cpp
│ ├── cxx11_tensor_lvalue.cpp
│ ├── cxx11_tensor_empty.cpp
│ ├── matrix_square_root.cpp
│ ├── cxx11_tensor_math.cpp
│ ├── gmres.cpp
│ ├── dgmres.cpp
│ ├── cxx11_tensor_mixed_indices.cpp
│ ├── cxx11_tensor_roundings.cpp
│ ├── minres.cpp
│ ├── cxx11_tensor_notification.cpp
│ ├── cxx11_tensor_layout_swap.cpp
│ ├── cxx11_tensor_const.cpp
│ ├── cxx11_maxsizevector.cpp
│ ├── cxx11_tensor_sugar.cpp
│ ├── cxx11_tensor_move.cpp
│ ├── cxx11_tensor_comparisons.cpp
│ └── matrix_functions.h
│ ├── doc
│ ├── CMakeLists.txt
│ ├── SYCL.dox
│ ├── examples
│ │ ├── MatrixExponential.cpp
│ │ ├── MatrixPower.cpp
│ │ ├── MatrixLogarithm.cpp
│ │ ├── MatrixPower_optimal.cpp
│ │ ├── MatrixSquareRoot.cpp
│ │ ├── MatrixFunction.cpp
│ │ ├── MatrixSine.cpp
│ │ ├── MatrixSinh.cpp
│ │ ├── PolynomialUtils1.cpp
│ │ ├── CMakeLists.txt
│ │ ├── SYCL
│ │ │ └── CMakeLists.txt
│ │ ├── EulerAngles.cpp
│ │ └── BVH_Example.cpp
│ ├── Overview.dox
│ └── snippets
│ │ └── CMakeLists.txt
│ ├── Eigen
│ ├── src
│ │ ├── EulerAngles
│ │ │ └── CMakeLists.txt
│ │ └── NonLinearOptimization
│ │ │ ├── r1mpyq.h
│ │ │ ├── rwupdt.h
│ │ │ ├── chkder.h
│ │ │ └── covar.h
│ ├── CXX11
│ │ ├── src
│ │ │ ├── Tensor
│ │ │ │ ├── TensorDeviceCuda.h
│ │ │ │ ├── TensorReductionCuda.h
│ │ │ │ ├── TensorContractionCuda.h
│ │ │ │ ├── TensorGpuHipCudaUndefines.h
│ │ │ │ └── TensorGlobalFunctions.h
│ │ │ └── ThreadPool
│ │ │ │ ├── ThreadYield.h
│ │ │ │ ├── ThreadCancel.h
│ │ │ │ ├── ThreadEnvironment.h
│ │ │ │ ├── ThreadPoolInterface.h
│ │ │ │ └── Barrier.h
│ │ ├── CMakeLists.txt
│ │ └── TensorSymmetry
│ ├── MoreVectorization
│ ├── CMakeLists.txt
│ ├── ArpackSupport
│ ├── Skyline
│ ├── KroneckerProduct
│ ├── Splines
│ ├── EulerAngles
│ ├── AutoDiff
│ ├── LevenbergMarquardt
│ ├── SparseExtra
│ ├── IterativeSolvers
│ └── NumericalDiff
│ ├── CMakeLists.txt
│ └── README.txt
├── settings
├── airfoils
│ ├── V12.pfl
│ ├── rhombic
│ ├── bridgegLarsen
│ ├── tacomagi
│ ├── bridgegi
│ ├── squareg
│ ├── semicirc
│ ├── circle20
│ ├── rect01Frolov36
│ └── rectFrolov-c025-n38
└── wakes
│ ├── two_vortex
│ ├── four_vortex
│ └── one_vortex
├── run
├── batch
├── task
├── defaults
├── problems
└── mechanics
├── .gitignore
├── .travis.yml
├── .readthedocs.yaml
└── tutorials
├── tube
├── pointsVP
└── passport
├── lamb
└── passport
├── blasius
└── passport
├── rotor
└── passport
├── wingBase
└── passport
├── blasius5k
└── passport
├── squareGivenLaw
└── passport
├── oscilCircle
└── passport
├── circle200
└── passport
├── coupledProblem
└── passport
├── twoCircle
└── passport
└── cylPlate
└── passport
/docs/_doxygen/html/.nojekyll:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/VMlib/AirfoilGeometry/AirfoilGeometry.cpp:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/include/Eigen/Eigen:
--------------------------------------------------------------------------------
1 | #include "Dense"
2 | #include "Sparse"
3 |
--------------------------------------------------------------------------------
/include/unsupported/test/FFT.cpp:
--------------------------------------------------------------------------------
1 | #define test_FFTW test_FFT
2 | #include "FFTW.cpp"
3 |
--------------------------------------------------------------------------------
/docs/_doxygen/LOGO.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_doxygen/LOGO.png
--------------------------------------------------------------------------------
/docs/_static/LOGO.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/LOGO.png
--------------------------------------------------------------------------------
/src/VMcuda/knn/knn.cu:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/src/VMcuda/knn/knn.cu
--------------------------------------------------------------------------------
/settings/airfoils/V12.pfl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/settings/airfoils/V12.pfl
--------------------------------------------------------------------------------
/src/VM2D/Wake2D/knnOld.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/src/VM2D/Wake2D/knnOld.zip
--------------------------------------------------------------------------------
/docs/_doxygen/VM2D-Paper.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_doxygen/VM2D-Paper.pdf
--------------------------------------------------------------------------------
/src/VM2D/Gmres2D/Gmres2D.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/src/VM2D/Gmres2D/Gmres2D.cpp
--------------------------------------------------------------------------------
/docs/_static/authors/Kobzar.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Kobzar.jpg
--------------------------------------------------------------------------------
/docs/_static/authors/Ryatina.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Ryatina.jpg
--------------------------------------------------------------------------------
/docs/_static/authors/Sokol.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Sokol.jpg
--------------------------------------------------------------------------------
/docs/_static/authors/Gumirova.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Gumirova.jpg
--------------------------------------------------------------------------------
/docs/_static/authors/Izmailova.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Izmailova.jpg
--------------------------------------------------------------------------------
/docs/_static/authors/Kolganova.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Kolganova.jpg
--------------------------------------------------------------------------------
/docs/_static/authors/Shcheglov.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Shcheglov.jpg
--------------------------------------------------------------------------------
/docs/_static/authors/Soldatova.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Soldatova.jpg
--------------------------------------------------------------------------------
/docs/_static/authors/Marchevsky.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Marchevsky.jpg
--------------------------------------------------------------------------------
/docs/_static/authors/Serafimova.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Serafimova.jpg
--------------------------------------------------------------------------------
/docs/_static/authors/Serebrovskaya.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/docs/_static/authors/Serebrovskaya.jpg
--------------------------------------------------------------------------------
/src/VMcuda/intersection/lbvh/query.cuh:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/src/VMcuda/intersection/lbvh/query.cuh
--------------------------------------------------------------------------------
/include/Eigen/src/Core/util/NonMPL2.h:
--------------------------------------------------------------------------------
1 | #ifdef EIGEN_MPL2_ONLY
2 | #error Including non-MPL2 code in EIGEN_MPL2_ONLY mode
3 | #endif
4 |
--------------------------------------------------------------------------------
/src/VMcuda/intersection/intersection.cuh:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vortexmethods/VM2D/HEAD/src/VMcuda/intersection/intersection.cuh
--------------------------------------------------------------------------------
/settings/airfoils/rhombic:
--------------------------------------------------------------------------------
1 | geometry = {
2 | {0.5, 0.0, c},
3 | {0.0, 0.5, c},
4 | {-0.5, 0.0, c},
5 | {0.0, -0.5, c},
6 | {0.5, 0.0, c}
7 | };
--------------------------------------------------------------------------------
/include/unsupported/doc/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | set_directory_properties(PROPERTIES EXCLUDE_FROM_ALL TRUE)
2 |
3 | add_subdirectory(examples)
4 | add_subdirectory(snippets)
5 |
--------------------------------------------------------------------------------
/include/Eigen/Dense:
--------------------------------------------------------------------------------
1 | #include "Core"
2 | #include "LU"
3 | #include "Cholesky"
4 | #include "QR"
5 | #include "SVD"
6 | #include "Geometry"
7 | #include "Eigenvalues"
8 |
--------------------------------------------------------------------------------
/include/unsupported/Eigen/src/EulerAngles/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | file(GLOB Eigen_EulerAngles_SRCS "*.h")
2 |
3 | install(FILES
4 | ${Eigen_EulerAngles_SRCS}
5 | DESTINATION ${INCLUDE_INSTALL_DIR}/unsupported/Eigen/src/EulerAngles COMPONENT Devel
6 | )
7 |
--------------------------------------------------------------------------------
/settings/airfoils/bridgegLarsen:
--------------------------------------------------------------------------------
1 | geometry={
2 | { 15.5, 0.650, c},
3 | { 13.5, 1.650, c},
4 | { 0.0, 1.987, c},
5 | {-13.5, 1.650, c},
6 | {-15.5, 0.650, c},
7 | { -9.5, -2.350, c},
8 | { 0.0, -2.350, c},
9 | { 9.5, -2.350, c},
10 | { 15.5, 0.650, c}
11 | };
--------------------------------------------------------------------------------
/run/batch:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #SBATCH --job-name=Marchevsky_M70
3 | #SBATCH --time=48:00:00
4 | #SBATCH --nodes=1 --cpus-per-task=18
5 | #SBATCH --partition release
6 | ulimit -l unlimited
7 | # mpirun -n 1 echo $HOSTNAME
8 | mpirun -n 1 /nethome/student/FS18/FS2-x1/Izmailova/VM2D-06-06/build/VM2Dfix
--------------------------------------------------------------------------------
/include/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceCuda.h:
--------------------------------------------------------------------------------
1 |
2 | #if defined(__clang__) || defined(__GNUC__)
3 | #warning "Deprecated header file, please either include the main Eigen/CXX11/Tensor header or the respective TensorDeviceGpu.h file"
4 | #endif
5 |
6 | #include "TensorDeviceGpu.h"
7 |
--------------------------------------------------------------------------------
/include/unsupported/Eigen/CXX11/src/Tensor/TensorReductionCuda.h:
--------------------------------------------------------------------------------
1 |
2 | #if defined(__clang__) || defined(__GNUC__)
3 | #warning "Deprecated header file, please either include the main Eigen/CXX11/Tensor header or the respective TensorReductionGpu.h file"
4 | #endif
5 |
6 | #include "TensorReductionGpu.h"
7 |
--------------------------------------------------------------------------------
/include/unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h:
--------------------------------------------------------------------------------
1 |
2 | #if defined(__clang__) || defined(__GNUC__)
3 | #warning "Deprecated header file, please either include the main Eigen/CXX11/Tensor header or the respective TensorContractionGpu.h file"
4 | #endif
5 |
6 | #include "TensorContractionGpu.h"
7 |
--------------------------------------------------------------------------------
/run/task:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #PBS -N VM2D_User
3 | #PBS -S /bin/bash
4 | #PBS -l walltime=48:00:00
5 | #PBS -l nodes=2:ppn=12
6 | #PBS -q bl220
7 | #PBS -d /unicluster/home/guest13/VortTest/run
8 |
9 | cat $PBS_NODEFILE
10 |
11 | mpirun -machinefile $PBS_NODEFILE -np 2 -map-by slot:pe=12 VM2D > log.log
12 |
--------------------------------------------------------------------------------
/src/VMcuda/intersection/lbvh.cuh:
--------------------------------------------------------------------------------
1 | #ifndef LBVH_LBVH_CUH
2 | #define LBVH_LBVH_CUH
3 |
4 | #include "lbvh/aabb.cuh"
5 | #include "lbvh/bvh.cuh"
6 | #include "lbvh/morton_code.cuh"
7 | #include "lbvh/predicator.cuh"
8 | #include "lbvh/query.cuh"
9 | #include "lbvh/utility.cuh"
10 |
11 | #endif// LBVH_LBVH_CUH
12 |
--------------------------------------------------------------------------------
/include/unsupported/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | add_subdirectory(Eigen)
2 | add_subdirectory(doc EXCLUDE_FROM_ALL)
3 | if(BUILD_TESTING)
4 | if(EIGEN_LEAVE_TEST_IN_ALL_TARGET)
5 | add_subdirectory(test) # can't do EXCLUDE_FROM_ALL here, breaks CTest
6 | else()
7 | add_subdirectory(test EXCLUDE_FROM_ALL)
8 | endif()
9 | endif()
10 |
--------------------------------------------------------------------------------
/src/VM2D/Wake2D/knnCPU-new.h:
--------------------------------------------------------------------------------
1 | #ifndef KNNCPUNEW_H
2 | #define KNNCPUNEW_H
3 |
4 | #include "Vortex2D.h"
5 |
6 | void WakekNNnew(const std::vector& vtx, const size_t k, std::vector>>& initdist,
7 | double cSP, double cRBP, double maxG, double epsCol, int type);
8 |
9 |
10 | #endif
--------------------------------------------------------------------------------
/include/unsupported/Eigen/CXX11/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | set(Eigen_CXX11_HEADERS Tensor TensorSymmetry ThreadPool)
2 |
3 | install(FILES
4 | ${Eigen_CXX11_HEADERS}
5 | DESTINATION ${INCLUDE_INSTALL_DIR}/unsupported/Eigen/CXX11 COMPONENT Devel
6 | )
7 |
8 | install(DIRECTORY src DESTINATION ${INCLUDE_INSTALL_DIR}/unsupported/Eigen/CXX11 COMPONENT Devel FILES_MATCHING PATTERN "*.h")
9 |
--------------------------------------------------------------------------------
/include/unsupported/doc/SYCL.dox:
--------------------------------------------------------------------------------
1 | /** \page SYCL_EIGEN Eigen SYCL Backend
2 |
3 | Useful information for Eigen SYCL Backend:
4 |
5 | - Getting Started with Eigen
6 |
7 | - Options for Building Eigen SYCL
8 |
9 | */
10 |
--------------------------------------------------------------------------------
/src/VMcuda/knn/knn.cuh:
--------------------------------------------------------------------------------
1 | #ifndef KNN_CUH
2 | #define KNN_CUH
3 |
4 | #include
5 | #include "Vortex2D.h"
6 |
7 |
8 | class VectorsForKnn;
9 |
10 | void kNNcuda(const std::vector& vtx,
11 | const size_t k,
12 | std::vector>& initdist,
13 | VectorsForKnn*& vecForKnn,
14 | double cSP, double cRBP, double maxG, double epsCol, int typ);
15 |
16 |
17 | #endif //KNN_CUH
--------------------------------------------------------------------------------
/settings/airfoils/tacomagi:
--------------------------------------------------------------------------------
1 | geometry={
2 | {5.95, 0.00, c},
3 | {5.95, 1.225, c},
4 | {5.7, 1.225, c},
5 | {5.7, 0.1, c},
6 | {0.0, 0.1, c},
7 | {-5.7, 0.1, c},
8 | {-5.7, 1.225, c},
9 | {-5.95, 1.225, c},
10 | {-5.95, 0.0, c},
11 | {-5.95, -1.225, c},
12 | {-5.7, -1.225, c},
13 | {-5.7, -0.1, c},
14 | {0.0, -0.1, c},
15 | {5.7, -0.1, c},
16 | {5.7, -1.225, c},
17 | {5.95, -1.225, c},
18 | {5.95, 0.0, c}
19 | };
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Prerequisites
2 | *.d
3 |
4 | # Compiled Object files
5 | *.slo
6 | *.lo
7 | *.o
8 | *.obj
9 |
10 | # Precompiled Headers
11 | *.gch
12 | *.pch
13 |
14 | # Compiled Dynamic libraries
15 | *.so
16 | *.dylib
17 | *.dll
18 |
19 | # Fortran module files
20 | *.mod
21 | *.smod
22 |
23 | # Compiled Static libraries
24 | *.lai
25 | *.la
26 | *.a
27 | *.lib
28 |
29 | # Executables
30 | *.exe
31 | *.out
32 | *.app
33 |
34 | # Folders
35 | build/
36 |
37 |
--------------------------------------------------------------------------------
/include/unsupported/doc/examples/MatrixExponential.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | using namespace Eigen;
5 |
6 | int main()
7 | {
8 | const double pi = std::acos(-1.0);
9 |
10 | MatrixXd A(3,3);
11 | A << 0, -pi/4, 0,
12 | pi/4, 0, 0,
13 | 0, 0, 0;
14 | std::cout << "The matrix A is:\n" << A << "\n\n";
15 | std::cout << "The matrix exponential of A is:\n" << A.exp() << "\n\n";
16 | }
17 |
--------------------------------------------------------------------------------
/include/unsupported/doc/examples/MatrixPower.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | using namespace Eigen;
5 |
6 | int main()
7 | {
8 | const double pi = std::acos(-1.0);
9 | Matrix3d A;
10 | A << cos(1), -sin(1), 0,
11 | sin(1), cos(1), 0,
12 | 0 , 0 , 1;
13 | std::cout << "The matrix A is:\n" << A << "\n\n"
14 | "The matrix power A^(pi/4) is:\n" << A.pow(pi/4) << std::endl;
15 | return 0;
16 | }
17 |
--------------------------------------------------------------------------------
/include/unsupported/doc/examples/MatrixLogarithm.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | using namespace Eigen;
5 |
6 | int main()
7 | {
8 | using std::sqrt;
9 | MatrixXd A(3,3);
10 | A << 0.5*sqrt(2), -0.5*sqrt(2), 0,
11 | 0.5*sqrt(2), 0.5*sqrt(2), 0,
12 | 0, 0, 1;
13 | std::cout << "The matrix A is:\n" << A << "\n\n";
14 | std::cout << "The matrix logarithm of A is:\n" << A.log() << "\n";
15 | }
16 |
--------------------------------------------------------------------------------
/src/VMlib/AirfoilGeometry/AirfoilGeometry.h:
--------------------------------------------------------------------------------
1 | #ifndef AIRFOILGEOMETRY_H_
2 | #define AIRFOILGEOMETRY_H_
3 |
4 | #include "numvector.h"
5 | #include "Point2D.h"
6 |
7 | namespace VMlib
8 | {
9 | struct GeomPoint
10 | {
11 | //private:
12 | Point2D r;
13 | std::string type;
14 | //public:
15 |
16 | GeomPoint() {};
17 |
18 | GeomPoint(const Point2D& _r, const std::string& _type)
19 | : r(_r), type(_type) { }
20 |
21 | ~GeomPoint() {};
22 | };
23 | }
24 |
25 | using VMlib::GeomPoint;
26 |
27 | #endif
--------------------------------------------------------------------------------
/include/unsupported/doc/examples/MatrixPower_optimal.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | using namespace Eigen;
5 |
6 | int main()
7 | {
8 | Matrix4cd A = Matrix4cd::Random();
9 | MatrixPower Apow(A);
10 |
11 | std::cout << "The matrix A is:\n" << A << "\n\n"
12 | "A^3.1 is:\n" << Apow(3.1) << "\n\n"
13 | "A^3.3 is:\n" << Apow(3.3) << "\n\n"
14 | "A^3.7 is:\n" << Apow(3.7) << "\n\n"
15 | "A^3.9 is:\n" << Apow(3.9) << std::endl;
16 | return 0;
17 | }
18 |
--------------------------------------------------------------------------------
/include/unsupported/doc/examples/MatrixSquareRoot.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | using namespace Eigen;
5 |
6 | int main()
7 | {
8 | const double pi = std::acos(-1.0);
9 |
10 | MatrixXd A(2,2);
11 | A << cos(pi/3), -sin(pi/3),
12 | sin(pi/3), cos(pi/3);
13 | std::cout << "The matrix A is:\n" << A << "\n\n";
14 | std::cout << "The matrix square root of A is:\n" << A.sqrt() << "\n\n";
15 | std::cout << "The square of the last matrix is:\n" << A.sqrt() * A.sqrt() << "\n";
16 | }
17 |
--------------------------------------------------------------------------------
/docs/index.rst:
--------------------------------------------------------------------------------
1 | .. VM2D documentation master file, created by
2 | sphinx-quickstart on Fri Jul 16 00:03:46 2021.
3 | You can adapt this file completely to your liking, but it should at least
4 | contain the root `toctree` directive.
5 |
6 | The VM2D code
7 | =============
8 |
9 | .. toctree::
10 | :maxdepth: 2
11 | :caption: User guide for the VM2D code:
12 |
13 | 01_installation-eng
14 | 02_syntax-eng
15 | 03_starting-eng
16 | 04_passport-eng
17 | 05_run-eng
18 |
19 |
20 |
21 | .. * :ref:`genindex`
22 | .. * :ref:`modindex`
23 | .. * :ref:`search`
24 |
--------------------------------------------------------------------------------
/include/Eigen/src/misc/lapacke_mangling.h:
--------------------------------------------------------------------------------
1 | #ifndef LAPACK_HEADER_INCLUDED
2 | #define LAPACK_HEADER_INCLUDED
3 |
4 | #ifndef LAPACK_GLOBAL
5 | #if defined(LAPACK_GLOBAL_PATTERN_LC) || defined(ADD_)
6 | #define LAPACK_GLOBAL(lcname,UCNAME) lcname##_
7 | #elif defined(LAPACK_GLOBAL_PATTERN_UC) || defined(UPPER)
8 | #define LAPACK_GLOBAL(lcname,UCNAME) UCNAME
9 | #elif defined(LAPACK_GLOBAL_PATTERN_MC) || defined(NOCHANGE)
10 | #define LAPACK_GLOBAL(lcname,UCNAME) lcname
11 | #else
12 | #define LAPACK_GLOBAL(lcname,UCNAME) lcname##_
13 | #endif
14 | #endif
15 |
16 | #endif
17 |
18 |
--------------------------------------------------------------------------------
/docs/index-ru.rst:
--------------------------------------------------------------------------------
1 | .. VM2D documentation master file, created by
2 | sphinx-quickstart on Fri Jul 16 00:03:46 2021.
3 | You can adapt this file completely to your liking, but it should at least
4 | contain the root `toctree` directive.
5 |
6 | Документация пользователя пакета VM2D
7 | =====================================
8 |
9 | .. toctree::
10 | :maxdepth: 2
11 | :caption: User guide for the VM2D code:
12 |
13 | 01_installation
14 | 02_syntax
15 | 03_starting
16 | 04_passport
17 | 05_run
18 |
19 |
20 |
21 | .. * :ref:`genindex`
22 | .. * :ref:`modindex`
23 | .. * :ref:`search`
24 |
--------------------------------------------------------------------------------
/include/unsupported/doc/examples/MatrixFunction.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | using namespace Eigen;
5 |
6 | std::complex expfn(std::complex x, int)
7 | {
8 | return std::exp(x);
9 | }
10 |
11 | int main()
12 | {
13 | const double pi = std::acos(-1.0);
14 |
15 | MatrixXd A(3,3);
16 | A << 0, -pi/4, 0,
17 | pi/4, 0, 0,
18 | 0, 0, 0;
19 |
20 | std::cout << "The matrix A is:\n" << A << "\n\n";
21 | std::cout << "The matrix exponential of A is:\n"
22 | << A.matrixFunction(expfn) << "\n\n";
23 | }
24 |
--------------------------------------------------------------------------------
/include/unsupported/doc/examples/MatrixSine.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | using namespace Eigen;
5 |
6 | int main()
7 | {
8 | MatrixXd A = MatrixXd::Random(3,3);
9 | std::cout << "A = \n" << A << "\n\n";
10 |
11 | MatrixXd sinA = A.sin();
12 | std::cout << "sin(A) = \n" << sinA << "\n\n";
13 |
14 | MatrixXd cosA = A.cos();
15 | std::cout << "cos(A) = \n" << cosA << "\n\n";
16 |
17 | // The matrix functions satisfy sin^2(A) + cos^2(A) = I,
18 | // like the scalar functions.
19 | std::cout << "sin^2(A) + cos^2(A) = \n" << sinA*sinA + cosA*cosA << "\n\n";
20 | }
21 |
--------------------------------------------------------------------------------
/include/unsupported/doc/examples/MatrixSinh.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | using namespace Eigen;
5 |
6 | int main()
7 | {
8 | MatrixXf A = MatrixXf::Random(3,3);
9 | std::cout << "A = \n" << A << "\n\n";
10 |
11 | MatrixXf sinhA = A.sinh();
12 | std::cout << "sinh(A) = \n" << sinhA << "\n\n";
13 |
14 | MatrixXf coshA = A.cosh();
15 | std::cout << "cosh(A) = \n" << coshA << "\n\n";
16 |
17 | // The matrix functions satisfy cosh^2(A) - sinh^2(A) = I,
18 | // like the scalar functions.
19 | std::cout << "cosh^2(A) - sinh^2(A) = \n" << coshA*coshA - sinhA*sinhA << "\n\n";
20 | }
21 |
--------------------------------------------------------------------------------
/src/VMcuda/GPU/ShiftKernels/IncludeKer.cu:
--------------------------------------------------------------------------------
1 | #include "ShiftKernels/SummKer1.cu"
2 | #include "ShiftKernels/SummKer2.cu"
3 | #include "ShiftKernels/SummKer3.cu"
4 | #include "ShiftKernels/SummKer4.cu"
5 | #include "ShiftKernels/SummKer5.cu"
6 | #include "ShiftKernels/SummKer6.cu"
7 | #include "ShiftKernels/SummKer7.cu"
8 | #include "ShiftKernels/SummKer8.cu"
9 | #include "ShiftKernels/SummKer9.cu"
10 | #include "ShiftKernels/SummKer10.cu"
11 | #include "ShiftKernels/SummKer11.cu"
12 | #include "ShiftKernels/SummKer12.cu"
13 | #include "ShiftKernels/SummKer13.cu"
14 | #include "ShiftKernels/SummKer14.cu"
15 | #include "ShiftKernels/SummKer15.cu"
16 | #include "ShiftKernels/SummKer16.cu"
--------------------------------------------------------------------------------
/include/unsupported/Eigen/MoreVectorization:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | //
5 | // This Source Code Form is subject to the terms of the Mozilla
6 | // Public License v. 2.0. If a copy of the MPL was not distributed
7 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 |
9 | #ifndef EIGEN_MOREVECTORIZATION_MODULE_H
10 | #define EIGEN_MOREVECTORIZATION_MODULE_H
11 |
12 | #include "../../Eigen/Core"
13 |
14 | namespace Eigen {
15 |
16 | /**
17 | * \defgroup MoreVectorization More vectorization module
18 | */
19 |
20 | }
21 |
22 | #include "src/MoreVectorization/MathFunctions.h"
23 |
24 | #endif // EIGEN_MOREVECTORIZATION_MODULE_H
25 |
--------------------------------------------------------------------------------
/include/Eigen/src/Core/functors/TernaryFunctors.h:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | // Copyright (C) 2016 Eugene Brevdo
5 | //
6 | // This Source Code Form is subject to the terms of the Mozilla
7 | // Public License v. 2.0. If a copy of the MPL was not distributed
8 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 |
10 | #ifndef EIGEN_TERNARY_FUNCTORS_H
11 | #define EIGEN_TERNARY_FUNCTORS_H
12 |
13 | namespace Eigen {
14 |
15 | namespace internal {
16 |
17 | //---------- associative ternary functors ----------
18 |
19 |
20 |
21 | } // end namespace internal
22 |
23 | } // end namespace Eigen
24 |
25 | #endif // EIGEN_TERNARY_FUNCTORS_H
26 |
--------------------------------------------------------------------------------
/include/unsupported/doc/examples/PolynomialUtils1.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | using namespace Eigen;
5 | using namespace std;
6 |
7 | int main()
8 | {
9 | Vector4d roots = Vector4d::Random();
10 | cout << "Roots: " << roots.transpose() << endl;
11 | Eigen::Matrix polynomial;
12 | roots_to_monicPolynomial( roots, polynomial );
13 | cout << "Polynomial: ";
14 | for( int i=0; i<4; ++i ){ cout << polynomial[i] << ".x^" << i << "+ "; }
15 | cout << polynomial[4] << ".x^4" << endl;
16 | Vector4d evaluation;
17 | for( int i=0; i<4; ++i ){
18 | evaluation[i] = poly_eval( polynomial, roots[i] ); }
19 | cout << "Evaluation of the polynomial at the roots: " << evaluation.transpose();
20 | }
21 |
--------------------------------------------------------------------------------
/include/unsupported/Eigen/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | set(Eigen_HEADERS
2 | AdolcForward
3 | AlignedVector3
4 | ArpackSupport
5 | AutoDiff
6 | BVH
7 | EulerAngles
8 | FFT
9 | IterativeSolvers
10 | KroneckerProduct
11 | LevenbergMarquardt
12 | MatrixFunctions
13 | MoreVectorization
14 | MPRealSupport
15 | NonLinearOptimization
16 | NumericalDiff
17 | OpenGLSupport
18 | Polynomials
19 | Skyline
20 | SparseExtra
21 | SpecialFunctions
22 | Splines
23 | )
24 |
25 | install(FILES
26 | ${Eigen_HEADERS}
27 | DESTINATION ${INCLUDE_INSTALL_DIR}/unsupported/Eigen COMPONENT Devel
28 | )
29 |
30 | install(DIRECTORY src DESTINATION ${INCLUDE_INSTALL_DIR}/unsupported/Eigen COMPONENT Devel FILES_MATCHING PATTERN "*.h")
31 |
32 | add_subdirectory(CXX11)
33 |
--------------------------------------------------------------------------------
/include/Eigen/src/Core/arch/HIP/hcc/math_constants.h:
--------------------------------------------------------------------------------
1 | /*
2 | * math_constants.h -
3 | * HIP equivalent of the CUDA header of the same name
4 | */
5 |
6 | #ifndef __MATH_CONSTANTS_H__
7 | #define __MATH_CONSTANTS_H__
8 |
9 | /* single precision constants */
10 |
11 | #define HIPRT_INF_F __int_as_float(0x7f800000)
12 | #define HIPRT_NAN_F __int_as_float(0x7fffffff)
13 | #define HIPRT_MIN_DENORM_F __int_as_float(0x00000001)
14 | #define HIPRT_MAX_NORMAL_F __int_as_float(0x7f7fffff)
15 | #define HIPRT_NEG_ZERO_F __int_as_float(0x80000000)
16 | #define HIPRT_ZERO_F 0.0f
17 | #define HIPRT_ONE_F 1.0f
18 |
19 | /* double precision constants */
20 | #define HIPRT_INF __hiloint2double(0x7ff00000, 0x00000000)
21 | #define HIPRT_NAN __hiloint2double(0xfff80000, 0x00000000)
22 |
23 | #endif
24 |
--------------------------------------------------------------------------------
/include/Eigen/StdList:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | // Copyright (C) 2009 Hauke Heibel
5 | //
6 | // This Source Code Form is subject to the terms of the Mozilla
7 | // Public License v. 2.0. If a copy of the MPL was not distributed
8 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 |
10 | #ifndef EIGEN_STDLIST_MODULE_H
11 | #define EIGEN_STDLIST_MODULE_H
12 |
13 | #include "Core"
14 | #include
15 |
16 | #if EIGEN_COMP_MSVC && EIGEN_OS_WIN64 && (EIGEN_MAX_STATIC_ALIGN_BYTES<=16) /* MSVC auto aligns up to 16 bytes in 64 bit builds */
17 |
18 | #define EIGEN_DEFINE_STL_LIST_SPECIALIZATION(...)
19 |
20 | #else
21 |
22 | #include "src/StlSupport/StdList.h"
23 |
24 | #endif
25 |
26 | #endif // EIGEN_STDLIST_MODULE_H
27 |
--------------------------------------------------------------------------------
/include/unsupported/Eigen/CXX11/src/ThreadPool/ThreadYield.h:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | // Copyright (C) 2016 Benoit Steiner
5 | //
6 | // This Source Code Form is subject to the terms of the Mozilla
7 | // Public License v. 2.0. If a copy of the MPL was not distributed
8 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 |
10 | #ifndef EIGEN_CXX11_THREADPOOL_THREAD_YIELD_H
11 | #define EIGEN_CXX11_THREADPOOL_THREAD_YIELD_H
12 |
13 | // Try to come up with a portable way to yield
14 | #if EIGEN_COMP_GNUC && EIGEN_GNUC_AT_MOST(4, 7)
15 | #define EIGEN_THREAD_YIELD() sched_yield()
16 | #else
17 | #define EIGEN_THREAD_YIELD() std::this_thread::yield()
18 | #endif
19 |
20 | #endif // EIGEN_CXX11_THREADPOOL_THREAD_YIELD_H
21 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | # This will run on Travis' 'new' container-based infrastructure
2 | sudo: false
3 |
4 | # Blacklist
5 | branches:
6 | only:
7 | - master
8 |
9 | # Install dependencies
10 | addons:
11 | apt:
12 | packages:
13 | - doxygen
14 | - doxygen-doc
15 | - doxygen-latex
16 | - doxygen-gui
17 | - graphviz
18 |
19 | # Build your code e.g. by calling make
20 | script:
21 | - cd docs
22 | - cd _doxygen
23 | # - touch .nojekyll
24 | - doxygen Doxyfile 2>&1 | tee doxygen.log
25 | # - echo $TRAVIS_BUILD_DIR
26 | # - cd $TRAVIS_BUILD_DIR
27 | # - pwd
28 | # - ls
29 |
30 | # Deploy using travis builtin GitHub Pages support
31 | deploy:
32 | provider: pages
33 | skip_cleanup: true
34 | local-dir: docs/_doxygen/html
35 | github_token: $GITHUB_TOKEN # Set in travis-ci.org dashboard
36 | on:
37 | branch: master
--------------------------------------------------------------------------------
/include/unsupported/doc/examples/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | file(GLOB examples_SRCS "*.cpp")
2 |
3 | add_custom_target(unsupported_examples)
4 |
5 | include_directories(../../../unsupported ../../../unsupported/test)
6 |
7 | foreach(example_src ${examples_SRCS})
8 | get_filename_component(example ${example_src} NAME_WE)
9 | add_executable(example_${example} ${example_src})
10 | if(EIGEN_STANDARD_LIBRARIES_TO_LINK_TO)
11 | target_link_libraries(example_${example} ${EIGEN_STANDARD_LIBRARIES_TO_LINK_TO})
12 | endif()
13 | add_custom_command(
14 | TARGET example_${example}
15 | POST_BUILD
16 | COMMAND example_${example}
17 | ARGS >${CMAKE_CURRENT_BINARY_DIR}/${example}.out
18 | )
19 | add_dependencies(unsupported_examples example_${example})
20 | endforeach(example_src)
21 |
22 | if(EIGEN_TEST_SYCL)
23 | add_subdirectory(SYCL)
24 | endif(EIGEN_TEST_SYCL)
25 |
--------------------------------------------------------------------------------
/include/unsupported/Eigen/CXX11/src/ThreadPool/ThreadCancel.h:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | // Copyright (C) 2016 Benoit Steiner
5 | //
6 | // This Source Code Form is subject to the terms of the Mozilla
7 | // Public License v. 2.0. If a copy of the MPL was not distributed
8 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 |
10 | #ifndef EIGEN_CXX11_THREADPOOL_THREAD_CANCEL_H
11 | #define EIGEN_CXX11_THREADPOOL_THREAD_CANCEL_H
12 |
13 | // Try to come up with a portable way to cancel a thread
14 | #if EIGEN_OS_GNULINUX
15 | #define EIGEN_THREAD_CANCEL(t) \
16 | pthread_cancel(t.native_handle());
17 | #define EIGEN_SUPPORTS_THREAD_CANCELLATION 1
18 | #else
19 | #define EIGEN_THREAD_CANCEL(t)
20 | #endif
21 |
22 |
23 | #endif // EIGEN_CXX11_THREADPOOL_THREAD_CANCEL_H
24 |
--------------------------------------------------------------------------------
/include/Eigen/StdDeque:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | // Copyright (C) 2009 Gael Guennebaud
5 | // Copyright (C) 2009 Hauke Heibel
6 | //
7 | // This Source Code Form is subject to the terms of the Mozilla
8 | // Public License v. 2.0. If a copy of the MPL was not distributed
9 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 |
11 | #ifndef EIGEN_STDDEQUE_MODULE_H
12 | #define EIGEN_STDDEQUE_MODULE_H
13 |
14 | #include "Core"
15 | #include
16 |
17 | #if EIGEN_COMP_MSVC && EIGEN_OS_WIN64 && (EIGEN_MAX_STATIC_ALIGN_BYTES<=16) /* MSVC auto aligns up to 16 bytes in 64 bit builds */
18 |
19 | #define EIGEN_DEFINE_STL_DEQUE_SPECIALIZATION(...)
20 |
21 | #else
22 |
23 | #include "src/StlSupport/StdDeque.h"
24 |
25 | #endif
26 |
27 | #endif // EIGEN_STDDEQUE_MODULE_H
28 |
--------------------------------------------------------------------------------
/include/Eigen/StdVector:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | // Copyright (C) 2009 Gael Guennebaud
5 | // Copyright (C) 2009 Hauke Heibel
6 | //
7 | // This Source Code Form is subject to the terms of the Mozilla
8 | // Public License v. 2.0. If a copy of the MPL was not distributed
9 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 |
11 | #ifndef EIGEN_STDVECTOR_MODULE_H
12 | #define EIGEN_STDVECTOR_MODULE_H
13 |
14 | #include "Core"
15 | #include
16 |
17 | #if EIGEN_COMP_MSVC && EIGEN_OS_WIN64 && (EIGEN_MAX_STATIC_ALIGN_BYTES<=16) /* MSVC auto aligns up to 16 bytes in 64 bit builds */
18 |
19 | #define EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(...)
20 |
21 | #else
22 |
23 | #include "src/StlSupport/StdVector.h"
24 |
25 | #endif
26 |
27 | #endif // EIGEN_STDVECTOR_MODULE_H
28 |
--------------------------------------------------------------------------------
/src/VMcuda/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | link_directories(${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
2 |
3 | SUBDIRLIST(VMcudasubdir_VMcuda ${CMAKE_CURRENT_SOURCE_DIR})
4 | SUBDIRLIST(VMcudasubdir_VMlib ${CMAKE_SOURCE_DIR}/src/VMlib)
5 | LIST(APPEND VMcudadirs ${VMcudasubdir_VMcuda} ${VMcudasubdir_VMlib})
6 |
7 | #message(STATUS "VMcuda_dirs: ${VMcudadirs}")
8 |
9 | include_directories(${CMAKE_SOURCE_DIR}/include)
10 | include_directories(${VMcudadirs})
11 |
12 | include_directories(${CUDA_INCLUDE_DIRS})
13 |
14 | FILE(GLOB VMcuda_ALLFILES
15 | ${CMAKE_CURRENT_SOURCE_DIR}/*/*.cpp
16 | ${CMAKE_CURRENT_SOURCE_DIR}/*/*.h
17 | ${CMAKE_CURRENT_SOURCE_DIR}/*/*.cu
18 | ${CMAKE_CURRENT_SOURCE_DIR}/*/*.cuh
19 | )
20 |
21 | #CUDA
22 | if (CMAKE_CUDA_COMPILER)
23 | add_library(VMcuda ${VMcuda_ALLFILES})
24 | set(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS} --expt-extended-lambda --expt-relaxed-constexpr")
25 | set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --expt-extended-lambda --expt-relaxed-constexpr")
26 | endif()
--------------------------------------------------------------------------------
/include/Eigen/Householder:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | // This Source Code Form is subject to the terms of the Mozilla
5 | // Public License v. 2.0. If a copy of the MPL was not distributed
6 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 |
8 | #ifndef EIGEN_HOUSEHOLDER_MODULE_H
9 | #define EIGEN_HOUSEHOLDER_MODULE_H
10 |
11 | #include "Core"
12 |
13 | #include "src/Core/util/DisableStupidWarnings.h"
14 |
15 | /** \defgroup Householder_Module Householder module
16 | * This module provides Householder transformations.
17 | *
18 | * \code
19 | * #include
20 | * \endcode
21 | */
22 |
23 | #include "src/Householder/Householder.h"
24 | #include "src/Householder/HouseholderSequence.h"
25 | #include "src/Householder/BlockHouseholder.h"
26 |
27 | #include "src/Core/util/ReenableStupidWarnings.h"
28 |
29 | #endif // EIGEN_HOUSEHOLDER_MODULE_H
30 | /* vim: set filetype=cpp et sw=2 ts=2 ai: */
31 |
--------------------------------------------------------------------------------
/include/unsupported/doc/Overview.dox:
--------------------------------------------------------------------------------
1 | /// \brief Namespace containing all symbols from the %Eigen library.
2 | namespace Eigen {
3 |
4 | /** \mainpage %Eigen's unsupported modules
5 |
6 | This is the API documentation for %Eigen's unsupported modules.
7 |
8 | These modules are contributions from various users. They are provided "as is", without any support.
9 |
10 | Click on the \e Modules tab at the top of this page to get a list of all unsupported modules.
11 |
12 | Don't miss the official Eigen documentation.
13 |
14 | \subpage SYCL_EIGEN "SYCL backend for Eigen"
15 |
16 | */
17 |
18 | /*
19 |
20 | \defgroup Unsupported_modules Unsupported modules
21 |
22 | The unsupported modules are contributions from various users. They are
23 | provided "as is", without any support. Nevertheless, some of them are
24 | subject to be included in %Eigen in the future.
25 |
26 | */
27 |
28 | /// \internal \brief Namespace containing low-level routines from the %Eigen library.
29 | namespace internal {}
30 | }
31 |
32 |
--------------------------------------------------------------------------------
/include/Eigen/Sparse:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | // This Source Code Form is subject to the terms of the Mozilla
5 | // Public License v. 2.0. If a copy of the MPL was not distributed
6 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 |
8 | #ifndef EIGEN_SPARSE_MODULE_H
9 | #define EIGEN_SPARSE_MODULE_H
10 |
11 | /** \defgroup Sparse_Module Sparse meta-module
12 | *
13 | * Meta-module including all related modules:
14 | * - \ref SparseCore_Module
15 | * - \ref OrderingMethods_Module
16 | * - \ref SparseCholesky_Module
17 | * - \ref SparseLU_Module
18 | * - \ref SparseQR_Module
19 | * - \ref IterativeLinearSolvers_Module
20 | *
21 | \code
22 | #include
23 | \endcode
24 | */
25 |
26 | #include "SparseCore"
27 | #include "OrderingMethods"
28 | #include "SparseCholesky"
29 | #include "SparseLU"
30 | #include "SparseQR"
31 | #include "IterativeLinearSolvers"
32 |
33 | #endif // EIGEN_SPARSE_MODULE_H
34 |
35 |
--------------------------------------------------------------------------------
/include/Eigen/Jacobi:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | // This Source Code Form is subject to the terms of the Mozilla
5 | // Public License v. 2.0. If a copy of the MPL was not distributed
6 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 |
8 | #ifndef EIGEN_JACOBI_MODULE_H
9 | #define EIGEN_JACOBI_MODULE_H
10 |
11 | #include "Core"
12 |
13 | #include "src/Core/util/DisableStupidWarnings.h"
14 |
15 | /** \defgroup Jacobi_Module Jacobi module
16 | * This module provides Jacobi and Givens rotations.
17 | *
18 | * \code
19 | * #include
20 | * \endcode
21 | *
22 | * In addition to listed classes, it defines the two following MatrixBase methods to apply a Jacobi or Givens rotation:
23 | * - MatrixBase::applyOnTheLeft()
24 | * - MatrixBase::applyOnTheRight().
25 | */
26 |
27 | #include "src/Jacobi/Jacobi.h"
28 |
29 | #include "src/Core/util/ReenableStupidWarnings.h"
30 |
31 | #endif // EIGEN_JACOBI_MODULE_H
32 | /* vim: set filetype=cpp et sw=2 ts=2 ai: */
33 |
34 |
--------------------------------------------------------------------------------
/include/unsupported/Eigen/ArpackSupport:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | //
5 | // This Source Code Form is subject to the terms of the Mozilla
6 | // Public License v. 2.0. If a copy of the MPL was not distributed
7 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 |
9 | #ifndef EIGEN_ARPACKSUPPORT_MODULE_H
10 | #define EIGEN_ARPACKSUPPORT_MODULE_H
11 |
12 | #include "../../Eigen/Core"
13 |
14 | /** \defgroup ArpackSupport_Module Arpack support module
15 | *
16 | * This module provides a wrapper to Arpack, a library for sparse eigenvalue decomposition.
17 | *
18 | * \code
19 | * #include
20 | * \endcode
21 | */
22 |
23 | #include "../../Eigen/SparseCholesky"
24 |
25 | #include "../../Eigen/src/Core/util/DisableStupidWarnings.h"
26 | #include "src/Eigenvalues/ArpackSelfAdjointEigenSolver.h"
27 |
28 | #include "../../Eigen/src/Core/util/ReenableStupidWarnings.h"
29 |
30 | #endif // EIGEN_ARPACKSUPPORT_MODULE_H
31 | /* vim: set filetype=cpp et sw=2 ts=2 ai: */
32 |
--------------------------------------------------------------------------------
/settings/wakes/two_vortex:
--------------------------------------------------------------------------------
1 | /*--------------------------------*- VM2D -*-----------------*---------------*\
2 | | ## ## ## ## #### ##### | | Version 1.12 |
3 | | ## ## ### ### ## ## ## ## | VM2D: Vortex Method | 2024/01/14 |
4 | | ## ## ## # ## ## ## ## | for 2D Flow Simulation *----------------*
5 | | #### ## ## ## ## ## | Open Source Code |
6 | | ## ## ## ###### ##### | https://www.github.com/vortexmethods/VM2D |
7 | | |
8 | | Copyright (C) 2017-2024 I. Marchevsky, K. Sokol, E. Ryatina, A. Kolganova |
9 | *-----------------------------------------------------------------------------*
10 | | File name: two_vortex |
11 | | Info: Two vortices near circular airfoil |
12 | \*---------------------------------------------------------------------------*/
13 |
14 | vtx = {
15 | {0.51, 0.0, 0.00005},
16 | {0.51, 0.001, 0.00006},
17 | };
--------------------------------------------------------------------------------
/settings/airfoils/bridgegi:
--------------------------------------------------------------------------------
1 | geometry={
2 | {15.3211, -0.149443, i},
3 | {15.3615, -0.112573, i},
4 | {15.3764, -0.06, i},
5 | {15.3615, -0.00742689, i},
6 | {15.3211, 0.0294427, i},
7 | {13.5199, 0.93003, i},
8 | {13.5099, 0.934388, i},
9 | {13.4994, 0.937618, i},
10 | {13.4886, 0.939683, i},
11 | {13.4777, 0.940556, i},
12 | {0.00249552, 1.27694, i},
13 | {0.00124786, 1.27696, i},
14 | {0.0, 1.27697, i},
15 | {-0.00124786, 1.27696, i},
16 | {-0.00249552, 1.27694, i},
17 | {-13.4777, 0.940556, i},
18 | {-13.4886, 0.939683, i},
19 | {-13.4994, 0.937618, i},
20 | {-13.5099, 0.934388, i},
21 | {-13.5199, 0.93003, i},
22 | {-15.3211, 0.0294427, i},
23 | {-15.3615, -0.00742689, i},
24 | {-15.3764, -0.06, i},
25 | {-15.3615, -0.112573, i},
26 | {-15.3211, -0.149443, i},
27 | {-9.52111, -3.04944, i},
28 | {-9.51047, -3.05401, i},
29 | {-9.49937, -3.05732, i},
30 | {-9.48796, -3.05933, i},
31 | {-9.47639, -3.06, i},
32 | {0., -3.06, i},
33 | {9.47639, -3.06, i},
34 | {9.48796, -3.05933, i},
35 | {9.49937, -3.05732, i},
36 | {9.51047, -3.05401, i},
37 | {9.52111, -3.04944, i}
38 | };
--------------------------------------------------------------------------------
/include/unsupported/Eigen/Skyline:
--------------------------------------------------------------------------------
1 | // This file is part of Eigen, a lightweight C++ template library
2 | // for linear algebra.
3 | //
4 | //
5 | // This Source Code Form is subject to the terms of the Mozilla
6 | // Public License v. 2.0. If a copy of the MPL was not distributed
7 | // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 |
9 | #ifndef EIGEN_SKYLINE_MODULE_H
10 | #define EIGEN_SKYLINE_MODULE_H
11 |
12 |
13 | #include "../../Eigen/Core"
14 |
15 | #include "../../Eigen/src/Core/util/DisableStupidWarnings.h"
16 |
17 | #include