basic.hpp File Reference
Basic classes needed such as Vector and Tensor. More...
#include <vector>
#include <algorithm>
#include <tuple>
#include <cassert>
#include <stdexcept>
#include <memory>
#include <string>
#include <fstream>
#include <functional>
#include <type_traits>
#include <chrono>
#include <iomanip>
#include <omp.h>
Go to the source code of this file.
Classes | |
struct | LCS::Vector< T, Size > |
Struct for vectors. More... | |
struct | LCS::Vector< T, 1 > |
Vector with one element. More... | |
class | LCS::Tensor< T, Dim > |
Class for tensors. More... | |
class | LCS::Clock |
Class for time recording. More... | |
Namespaces | |
LCS | |
Namespace for the whole project. | |
Typedefs | |
template<typename T > | |
using | LCS::Scalar = Vector< T, 1 > |
Functions | |
template<typename T > | |
std::vector< T > | LCS::operator+ (const std::vector< T > &a, const std::vector< T > &b) |
template<typename T > | |
std::vector< T > | LCS::operator- (const std::vector< T > &a, const std::vector< T > &b) |
template<class T , class T2 > | |
std::vector< T > | LCS::operator* (const T2 c, std::vector< T > a) |
template<typename T , unsigned Size> | |
Vector< T, Size > | LCS::operator+ (const Vector< T, Size > &a, const Vector< T, Size > &b) |
template<typename T , unsigned Size> | |
Vector< T, Size > | LCS::operator- (const Vector< T, Size > &a, const Vector< T, Size > &b) |
template<typename T , unsigned Size> | |
Vector< T, Size > | LCS::operator* (const T c, Vector< T, Size > a) |
template<typename T > | |
T | LCS::interpolate (T x1, T x2, T y1, T y2, T xm) |
template<typename Field , typename T > | |
void | LCS::interpolate (T x1, T x2, Field &f1, Field &f2, T xm, Field &result) |
Detailed Description
Basic classes needed such as Vector and Tensor.
This file contains the basic classes nedded in the project, including extensions of std::vector
class to support vector arithemtic operations, functions to perfrom linear interpolations, and new Vecotr and Tensor classes to represent physical vectors (including scalars) and tensors (including matrices. It also contains elper class Clock to record program running time.