Skip to content

Curl of scalar function in 2D should be vector #152

@yguclu

Description

@yguclu

When taking the curl of a scalar function in 2D, this should be interpreted as the vector Curl operator, whose result is a vector with two components.

SymPDE thinks instead that the result is scalar, as can be checked with this code:

from sympde.topology import Square, ScalarFunctionSpace, element_of
from sympde.calculus import curl

domain  = Square('Omega')
V = ScalarFunctionSpace('V', domain)
u = element_of(V, name='u')
expr = curl(u)

print(expr.is_scalar)

This incorrectly prints True to terminal, instead of False.

The correct result is obtained by replacing curl with rot.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions