Inconsistencies in valuetype keyword argument of FE space constructors
- Dominant language
- Julia
- Stars
- 879
- Forks
- 119
- Avg merge
- 6d 3h
- Merged PRs (30d)
- 4
Description
`valuetype` is a mandatory keyword argument in the `PLagrangian` FE space constructor
```
FESpace( reffe=:PLagrangian, conformity=:L2, valuetype = Float64, order = 1, model = model)
```
but when one uses Float32 or Float16 it returns a conversion-related error.
On the other hand, for other methods like Raviart-Thomas FE spaces
```
FESpace( reffe=:RaviartThomas, conformity=:HDiv, order=2, model=model, diritags = [5,6])
```
it is not required and whatever one puts the result is the same.
By the way, not sure whether we should consider that the right value for vector field FE spaces that are not the composition of scalar ones should require e.g. `Float64` or `VectorValue{2,Float64}`
Contributor guide
Research direction
Start by reproducing the PLagrangian FESpace examples with Float64, Float32, and Float16, then compare them with the Raviart-Thomas constructor. Read the FESpace constructors and their valuetype handling. Done means agreeing on consistent keyword requirements and scalar or vector value semantics, then adding coverage for the chosen behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- backend-api-design
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100