# File matrix.hpp

↰ Parent directory (`cif++`)

## Definition (`cif++/matrix.hpp`)

- Program Listing for File matrix.hpp

## Detailed Description

Some basic matrix operations and classes to hold matrices.

We’re using expression templates for optimal performance.

## Includes

- `array`

- `cassert`

- `cmath`

- `cstdint`

- `ostream`

- `tuple`

- `type_traits`

- `vector`

## Included By

- File symmetry.hpp

## Namespaces

- Namespace cif

## Classes

- Template Class identity_matrix

- Template Class matrix

- Template Class matrix_cofactors

- Template Class matrix_expression

- Template Class matrix_fixed

- Template Class matrix_matrix_multiplication

- Template Class matrix_scalar_multiplication

- Template Class matrix_subtraction

- Template Class sub_matrix

- Template Class symmetric_matrix

- Template Class symmetric_matrix_fixed

## Functions

- Template Function cif::determinant(const matrix3x3<F>&)

- Template Function cif::determinant(const matrix4x4<F>&)

- Template Function cif::determinant(const M&)

- Template Function cif::inverse(const matrix3x3<F>&)

- Template Function cif::inverse(const M&)

- Template Function cif::operator*(const matrix_expression<M1>&, const matrix_expression<M2>&)

- Template Function cif::operator*(const matrix_expression<M1>&, T)

- Template Function cif::operator-

## Typedefs

- Typedef cif::matrix3x3

- Typedef cif::matrix4x4

- Typedef cif::symmetric_matrix3x3

- Typedef cif::symmetric_matrix4x4