Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/_static/conformal_space.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion docs/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ Compatibility notes
storage order is of interest, use ``mv.value[i]`` and ``len(mv)`` respectively. To obtain the
scalar part of a :class:`MultiVector`, use ``mv[()]`` instead of ``mv[0]``.
* ``Layout.gradeList`` has been removed. If still needed, it can be recovered as an :class:`ndarray`
isntead of a :class:`list` via the private attribute ``layout._basis_blade_order.grades``
instead of a :class:`list` via the private attribute ``layout._basis_blade_order.grades``
(:attr:`BasisBladeOrder.grades`).

Changes in 1.3.x
Expand Down
4 changes: 2 additions & 2 deletions docs/issues.rst
Original file line number Diff line number Diff line change
Expand Up @@ -65,15 +65,15 @@ Issues

The usual, analytic, method for computing inverses (:math:`M^{-1} = \tilde M/(M \tilde M)`
iff :math:`M\tilde M = {|M|}^2``) fails for those multivectors where ``M*~M`` is not a scalar.
It is onl)y used if the ``inv`` method is manually set to point to ``normalInv``.
It is only used if the ``inv`` method is manually set to point to ``normalInv``.

My testing suggests that ``laInv`` works. In the cases where ``normalInv`` works,
``laInv`` returns the same result (within ``_eps``). In all cases,
``M * M.laInv() == 1.0`` (within ``_eps``). Use whichever you feel comfortable
with.

Of course, a new issue arises with this method. The inverses found
are sometimes dependant on the order of multiplication. That is::
are sometimes dependent on the order of multiplication. That is::

M.laInv() * M == 1.0
M * M.laInv() != 1.0
Expand Down
2 changes: 1 addition & 1 deletion docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# extra requiremenets needed by the docs themselves
# extra requirements needed by the docs themselves
# numpydoc==0.4
pandas
ipykernel
Expand Down
4 changes: 2 additions & 2 deletions docs/tutorials/apollonius-cga-augmented.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"The code above also defines a stardard conformal $\\mathbb{R}^{N+1,1}$ layout without this new basis vector. This is primarily to support rendering with `pyganja`, which doesn't support the presence of this extra vector. `BasisVectorMap` defaults to preserving vectors by name between one algebra and another, while throwing away blades containing vectors missing from the destination algebra."
"The code above also defines a standard conformal $\\mathbb{R}^{N+1,1}$ layout without this new basis vector. This is primarily to support rendering with `pyganja`, which doesn't support the presence of this extra vector. `BasisVectorMap` defaults to preserving vectors by name between one algebra and another, while throwing away blades containing vectors missing from the destination algebra."
]
},
{
Expand Down Expand Up @@ -133,7 +133,7 @@
" (0, 0, 255),\n",
" (0, 255, 255),\n",
" ])\n",
" # note: .dual() neede here because we're passing in dual rounds, but ganja expects direct rounds\n",
" # note: .dual() needed here because we're passing in dual rounds, but ganja expects direct rounds\n",
" s = GanjaScene()\n",
" for r, color in zip(in_rounds, colors):\n",
" s.add_object(r.layout.to_conformal(r).dual(), color=color)\n",
Expand Down
2 changes: 1 addition & 1 deletion docs/tutorials/cga/visualization-tools.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -370,7 +370,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"Some more example of using `mpl_toolkits.clifford` to visualize 3D CGA can be found in the `examples` folder of the `mpl_toolkits.clifford` repositiory, [here](https://github.com/pygae/mpl_toolkits.clifford/tree/master/examples)."
"Some more example of using `mpl_toolkits.clifford` to visualize 3D CGA can be found in the `examples` folder of the `mpl_toolkits.clifford` repository, [here](https://github.com/pygae/mpl_toolkits.clifford/tree/master/examples)."
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion docs/tutorials/space-time-algebra.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"We therefor define a `split()` function, which has a simple condition allowing it to act on a vector or a multivector in $\\mathbb{D}$.\n",
"We therefore define a `split()` function, which has a simple condition allowing it to act on a vector or a multivector in $\\mathbb{D}$.\n",
"Splitting a spacetime bivector will be treated in the next section. "
]
},
Expand Down
Loading