Reciprocal space

Because it is a positional argument.  The `if foo is None:` pattern is used when you have optional (aka key-word) arguments and need to sort out if the user passed in a value or not.

If we are going to to input validation here, then it should be something like 

```
setting_angles = np.atleast_2d(setting_angles)
setting_angles.shape
if setting_angles.ndim != 2:
    raise ValueError()
if setting_angles.shape[1] != 6:
    raise ValueError()
```