Support for complex numbers
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 30/100
Direzione di ricerca
Inizia riproducendo il fallimento di arr.tau riportato nell’issue e l’esempio mostrato con np.copysign. Poi traccia i percorsi vettoriali che usano queste operazioni ed esamina i test esistenti per i tipi numerici; per completare il lavoro sarebbe necessario concordare l’ambito del supporto per i numeri complessi e avere una copertura di test corrispondente superata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe the potential feature
Currently the library does not support complex numbers, causing e.g.
import awkward as ak
import vector
arr = ak.Array(
[{"x": 1, "y": 2, "z": 3 + 3j, "t": 5 + 3j}],
with_name="Vector4D",
behavior=vector.backends.awkward.behavior,
)
arr.tau
to fail since np.copysign does not seem to handle complex numbers (see e.g. np.copysign(ak.Array([1, 1j]), ak.Array([1, -1]))).
I ran into this while solving for object kinematics in constrained systems, where the violation of assumptions (e.g. on-shell decay) can result in imaginary contributions to the kinematics. Another example might be math with tachyons. For my use case I can in practice work around this by making all relevant numbers real before hitting any vector codepaths that would otherwise fail.
I am opening this issue to have a place to track the topic and potential interest in vector with complex numbers as I have not seen this discussed previously.
Motivation
No response
Possible Implementation
No response
- Lingua principale
- Python
- Stelle
- 101
- Fork
- 43
- Merge medio
- 3h 38m
- PR unite (30g)
- 7
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di scikit-hep/vector
-
Numba object backend: missing to_2D/to_3D/to_4D, momentum-named conversions, and like()Forse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Apertafeature
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
scikit-hep/vector#750 ·
-
Add ability to somehow map field names to coordinate axis names that vector expectsForse di nuovo libera @hjaat l’ha presa 81 giorni fa e non c’è nessuna pull request aperta. Apertafeature
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
scikit-hep/vector#732 · 3 commenti ·
-
feature
Difficoltà 5/5 Più di una settimana Idoneità per principianti 45/100
scikit-hep/vector#731 · 1 commento ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 15/100
scikit-hep/vector#711 · 1 commento ·
-
Pyright showing errorsApertabug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
scikit-hep/vector#654 ·
Tutte le issue di scikit-hep/vector
Issue simili
-
area:core-platform effort:S priority:P3 status:in-review type:test
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 80/100
randomparity/kdive#3246 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Requantification library converts m/z to mass with the hydrogen-atom mass instead of the proton massApertabug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
nf-core/metaboigniter#130 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
common-workflow-language/cwl-utils#477 ·
I maintainer di solito rispondono entro 1 giorno
-
Add dependabotApertafeat
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 72/100
open-nudge/opentemplate#204 ·
I maintainer di solito rispondono entro 1 giorno
-
github-stale-ci-pr-closer: KV state is double-wrapped, never persists, and hits the depth-32 limitForse già presa @VascoSch92 l’ha presa oggi. Apertapriority:medium ready-for-dev
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
OpenHands/extensions#781 ·
I maintainer di solito rispondono entro 1 giorno