### 23 releases

0.1.22 | Jul 20, 2022 |
---|---|

0.1.21 | Jul 19, 2022 |

0.1.4 | Jun 26, 2022 |

#**384** in Math

**73** downloads per month

**MIT/Apache**

105KB

1K
SLoC

`nalgebra`

extension for LaTeX

`nalgebra`

The crate provides several robust formatters for

as well as
several LaTeX environments for customization.`nalgebra ::`Matrix

On top of that, the crate offers feature-gated support for

and `nalgebra_linsys`

.`evcxr`

## Example

`use` `nalgebra``::`matrix`;`
`use` `nalgebra_latex``::``{`
`fmt``::``{`write_latex`,` PlainMatrixFormatter`,` LatexFormatter`}``,`
`latex_modes``::``{`InlineMathMode`,` DisplayMathMode`,` InnerParagraphMode`}``,`
`}``;`
`let` `mut` s `=` `String``::`new`(``)``;`
`let` m `=` `matrix!``(`
`1``,``2``,``3``,``4``;`
`5``,``6``,``7``,``8``;`
`9``,``10``,``11``,``12``;`
`)``;`
`write_latex``::``<`PlainMatrixFormatter,InnerParagraphMode,InlineMathMode,`_`,`_``>``(``&``mut` s`,` `&`m`)``.``unwrap``(``)``;`
`assert_eq!``(`s`,` `r``"`$\begin{matrix}1&2&3&4\\5&6&7&8\\9&10&11&12\end{matrix}$`"``)``;`
s`.``clear``(``)``;`
`write_latex``::``<`PlainMatrixFormatter,InnerParagraphMode,DisplayMathMode,`_`,`_``>``(``&``mut` s`,` `&`m`)``.``unwrap``(``)``;`
`assert_eq!``(`s`,` `r``"`$$\begin{matrix}1&2&3&4\\5&6&7&8\\9&10&11&12\end{matrix}$$`"``)``;`

## What is `nalgebra`

?

`nalgebra`

is a general-purpose linear algebra library with transformations and statically-sized or dynamically-sized matrices.`nalgebra`

## What is LaTeX?

LaTeX is a language for typesetting documents, especially scientific papers, and a document preparation system.

## Example of .tex code

`% ...`
`\`subsection*`{``H``}`
`\`glossaryentry`{`hadamard_product`}``{`Hadamard product`}`
`\`begin`{``adjustwidth``}``{`1em`}``{``}`
`\`textbf`{``Field of study``}`: `\`textit`{``Mathematics. Linear Algebra. Matrix theory.``}` `\\`
`\`textbf`{``Distinct meanings in other fields of study``}`: `\`textit`{``unspecified.``}` `\\`
`\`textbf`{``Definitions``}`:
`\`begin`{``adjustwidth``}``{`1em`}``{``}` `\`leavevmode
`\`begin`{``framed``}`
For two `\`hyperlink`{`matrix`}``{``\`textit`{``matrices``}``}` `$``A``$` and `$``B``$` of the same `\`hyperlink`{`dimension_of_matrix`}``{``\`textit`{``dimension``}``}` `$``m` `\`times `n``$`, the `\`beingdefined`{`Hadamard product`}` `$``A` `\`circ `B``$` (or `$``A` `\`odot `B``$`) is a `\`hyperlink`{`matrix`}``{``\`textit`{``matrix``}``}` of the same `\`hyperlink`{`dimension_of_matrix`}``{``\`textit`{``dimension``}``}` as the operands, with elements given by
`\`begin`{``equation*``}``
``(``A` `\`circ `B``)``_``{``ij``}` `=` `(``A` `\`odot `B``)``_``{``ij``}` `=` `(``A``)``_``{``ij``}``(``B``)``_``{``ij``}`.
`\`end`{``equation*``}`
Source: `\`cite`{``wiki_hadamard_product_matrices``}`.
`\`end`{``framed``}`
`\`begin`{``framed``}`
Let `$``A``$` and `$``B``$` be `$``m` `\`times `n``$` `\`hyperlink`{`matrix`}``{``\`textit`{``matrices``}``}` with entries in `$``C``$`. The `\`beingdefined`{`Hadamard product`}` is defined by `$``[``A` `\`circ `B``]``_``{``ij``}``=``[``A``]``_``{``ij``}``[``B``]``_``{``ij``}``$` for all `$``1` `\`leq `i` `\`leq `m``$`, `$``1` `\`leq `j` `\`leq `n``$`. `\\` `\`vspace`{`1em`}`
Source: `\`cite`{``emillion``}`.
`\`end`{``framed``}`
`\`end`{``adjustwidth``}`
`\`end`{``adjustwidth``}` `\`vspace`{`1em`}`
`% ...`

### Output

## Warning

The library is overhauled. It changes frequently and the documentation is not always available. Doc tests (examples in the documentation) generally show working code.

## Resources on LaTeX

## Other useful links

# License

^{ Licensed under either of Apache License, Version 2.0 or MIT license at your option. }

_{ Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions. }

#### Dependencies

~4.5MB

~93K SLoC