Material Properties

This module provides functions and classes for material property management, including ODF/PDF processing and crystallography.

arma::mat Schmid(const arma::vec &n, const arma::vec &m)
arma::vec Schmid_v(const arma::vec &n, const arma::vec &m)
arma::mat F_nm(const arma::vec &N)
arma::mat Q_nm(const arma::vec &N, const double &mu, const double &lambda)
arma::vec get_densities_ODF(const arma::vec&, const std::string&, const std::string&, const bool&)
void fill_angles(const double&, phase_characteristics&, const ODF&, const int& = 1)
phase_characteristics discretize_ODF(const phase_characteristics&, ODF&, const int&, const int&, const int& = 1)
arma::vec get_densities_PDF(const arma::vec&, const std::string&, const std::string&)
void fill_parameters(const double&, phase_characteristics&, const PDF&)
phase_characteristics discretize_PDF(const phase_characteristics&, PDF&, const int&, const int&)
void read_peak(ODF&, const std::string&, const std::string&)

Function that reads the output parameters.

void read_peak(PDF&, const std::string&, const std::string&)
class ODF
#include <ODF.hpp>

Public Functions

ODF()
ODF(const int&, const bool& = false, const double& = 0., const double& = simcoon::pi)
ODF(const int&, const int&, const int&, const std::vector<peak>&, const double&, const arma::vec&, const arma::vec&, const bool& = false)
ODF(const ODF&)
virtual ~ODF()
void construct(const int&)
double density(const double&)
virtual ODF &operator=(const ODF&)

Public Members

int Nphases
int Angle
bool radian
int n_densities
std::vector<peak> peaks
double norm
arma::vec densities
arma::vec limits

Friends

friend std::ostream &operator<<(std::ostream&, const ODF&)
class PDF
#include <PDF.hpp>

Public Functions

PDF()
PDF(const int&, const double&, const double&)
PDF(const int&, const int&, const int&, const std::vector<peak>&, const double&, const arma::vec&, const arma::vec&)
PDF(const PDF&)
virtual ~PDF()
void construct(const int&)
double density(const double&)
virtual PDF &operator=(const PDF&)

Public Members

int Nphases
int Parameter
int n_densities
std::vector<peak> peaks
double norm
arma::vec densities
arma::vec limits

Friends

friend std::ostream &operator<<(std::ostream&, const PDF&)
class peak
#include <peak.hpp>

Public Functions

peak()
peak(const int&, const int&, const double&, const double&, const double&, const double&, const arma::vec&, const arma::vec&)
peak(const peak&)
virtual ~peak()
virtual double get_density_ODF(const double&)
virtual double get_density_PDF(const double&)
virtual peak &operator=(const peak&)

Public Members

int number
int method
double mean
double s_dev
double width
double ampl
arma::vec params
arma::vec densities

Friends

friend std::ostream &operator<<(std::ostream&, const peak&)
class variant
#include <variant.hpp>

Public Functions

variant()
variant(arma::vec, arma::vec, double)
variant(const variant&)
~variant()
void build(const double&)
virtual variant &operator=(const variant&)

Public Members

arma::vec n
arma::vec m
arma::mat R
double g
arma::vec ETn

Friends

friend std::ostream &operator<<(std::ostream&, const variant&)