Ask Your Question

Revision history [back]

The conjugate operator is not implemented because scalar fields on a real manifold are supposed to be real-valued functions. You can however bypass this limitation and implement it yourself by declaring the following Python function:

def conj(f):
    name, latex_name = f._function_name("conj", r"\,\mathrm{conj}")
    cf = type(f)(f.parent(), name=name, latex_name=latex_name)
    for chart, func in f._express.items():
        cf._express[chart] = chart.function(func.expr().conjugate())
    return cf

This is modeled from the abs function, see the Python code returned by f.__abs__??.