I’m sorry for creating a topic for such a short question but I don’t seem to find its answer in any place in the documentation (am I not searching in the right way?)
The question is: Is there any difference between dot and inner ? because I’ve seen codes with one or the other.
And talking about that, If dolfin-x has complex support. Does it means that every funcional space that I create is already complex valued? do real values are considered just a subset of complex values? Is there any keyword to specify a space to be complex/real?
Thank you very much, I’m sorry if this is already clear in the documentation.
However, to be able to solve problems, you would need to use PETSc with appropriate floating type.
In the docker images dolfinx/dolfinx, pre-installed versions of the real-32 (default) and (complex-32)
version of PETSc (linked with DOLFINx) is installed, and can be accessed by calling source dolfinx-complex-mode or source dolfinx-real-mode (as explained in: GitHub - FEniCS/dolfinx: Next generation FEniCS problem solving environment)
Thank you very much for pointing me to the documentation.
By the way, in the documentation says:
For variational formulations with complex numbers, one cannot use ufl.dot to compute inner products. One has to use ufl.inner, with the test-function as the second input argument for ufl.inner
I understood that the problem was that dot was not an inner product, as it was not conjugating the second argument. However, the docstring of doc (in version 0.3.0) is:
Docstring: UFL operator: Take the dot product of a and b. The complex conjugate of the second argument is taken.