From 9d517671a96efe6cc9fa57c9df38f5d5bb54ce00 Mon Sep 17 00:00:00 2001
From: Pascal Engeler <engelerp@phys.ethz.ch>
Date: Mon, 20 Jan 2020 14:48:07 +0100
Subject: [PATCH] New layout

---
 README.md | 60 +++++++++++++++++++++++++++++++++++--------------------
 1 file changed, 38 insertions(+), 22 deletions(-)

diff --git a/README.md b/README.md
index da5202e..13c79bc 100644
--- a/README.md
+++ b/README.md
@@ -5,28 +5,40 @@ such that it is flexible enough to adapt easily to any given situation.
 
 ## Structure
 The code is structured in an object oriented approach. The classes that likely will
-not need to be adapted for a new situation are found in the `lib` folder. They
-consist of the following:
+not need to be adapted for a new situation are found in the `lib` folder. They are
+described in the following. Note that qualifiers, references and the like are discarded
+where it improves legibility. Consult the source files for more information.
 
 ### Template Type `Vec2` (`vec2.hpp`), 2-vector utility class
-1. Template parameters:
+1. Template parameters
    - `value_t`: type of vector entries
-2. Members:
-   - Access:
-     - `value_t x()`: returns x entry
-     - `value_t y()`: returns y entry
-     - `Vec2 normalized()`: returns normalized version of vector
-     - `value_t r()`: returns length
-     - `value_t phi()`: returns angle (`std::atan2` version of it)
-   - Member functions:
-     - `value_t r_wrt(Vec2)`: returns length with origin at argument
-     - `value_t phi_wrt(Vec2)`: returns angle with origin at argument
-     - `value_t norm()`: returns norm
-     - `value_t norm_sq()`: returns square of norm
-   - Modifiers:
-     - `Vec2 normalize()`: normalize the vector
-     - `Vec2 rotate(Vec2, value_t)`: rotate the vector
-   - Supported Operators: All of these work as one would expect
+2. Members
+   - Access
+     - `value_t x()`
+       - returns x entry
+     - `value_t y()`
+       - returns y entry
+     - `Vec2 normalized()`
+       - returns normalized version of vector
+     - `value_t r()`
+       - returns length
+     - `value_t phi()`
+       - returns angle (`std::atan2` version of it)
+   - Member functions
+     - `value_t r_wrt(Vec2)`
+       - returns length with origin at argument
+     - `value_t phi_wrt(Vec2)`
+       - returns angle with origin at argument
+     - `value_t norm()`
+       - returns norm
+     - `value_t norm_sq()`
+       - returns square of norm
+   - Modifiers
+     - `Vec2 normalize()`
+       - normalizes the vector and returns it
+     - `Vec2 rotate(Vec2, value_t)`
+       - rotates the vector and returns it
+   - Supported Operators, All of these work as one would expect
      - `*` with `Vec2` (inner product) and `value_t`
      - `/` with `value_t`
      - `+, -` with `Vec2`
@@ -35,10 +47,14 @@ consist of the following:
      - `<<` with `std::ostream`
 
 ## Type `Diagonalizer` (`diagonalizer.hpp`), class to diagonalize symmetric Matrices
-1. Members:
-   - `std::vector<double> ev(std::vector<double> mat, size_t N)`:
+1. Members
+   - `std::vector<double> ev(std::vector<double> mat, size_t N)`
      - returns eigenvalues of the symmetric matrix mat of linear size N
      - throws upon diagonalization failure
-   - `std::pair<std::vector<double>, std::vector<double> > evv(std::vector<double> mat, size_t N)`:
+   - `std::pair<std::vector<double>, std::vector<double> > evv(std::vector<double> mat, size_t N)`
      - returns pair of (eigenvalues, eigenvectors) of the symmetric matrix mat of size N
      - throws upon diagonalization failure
+2. Further developments
+   - Only finding eigenvectors and -values in a certain range may be added later on
+
+## Type
-- 
GitLab