Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • pystencils pystencils
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 17
    • Issues 17
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 4
    • Merge requests 4
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • pycodegen
  • pystencilspystencils
  • Merge requests
  • !47

Closed
Created Sep 02, 2019 by Stephan Seitz@seitzMaintainer
  • Report abuse
Report abuse

WIP: Complex number support

  • Overview 0
  • Commits 25
  • Pipelines 1
  • Changes 16

Depends on !43 (merged)

Pystencils should eventually support complex numbers. Even if complex fields can be considered harmful for CPU vectorization. The concept is nice since SymPy and Python support complex numbers and there should be no performance disadvantage for normal CPU and GPU code. Many applications in physics and signal processing rely on complex numbers.

Complex output fields can be passed directly to libraries like cufft.

Problem: In C++, one cannot mix calculation with std::complex<float> with std::complex<double>. So user has to specify data_type='float32' when single precision complex floats are desired.

TODO:

  • GPU support with the header pycuda provides
  • only use complex_helper.h when needed
  • remove commits from !34 (merged) (probably the code will be changed)
  • rebase -i
Edited Sep 02, 2019 by Stephan Seitz
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: complex-numbers-with-type-interference