Add linearity tests for forward models
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 68/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- python
- Ambito
- testing-qa
Direzione di ricerca
Individua la copertura pytest esistente per i modelli diretti di points, prisms e tesseroids, quindi identifica i campi disponibili come potential e g_z. Aggiungi un test parametrizzato per ogni geometria che confronti il risultato multi-corpo con la somma dei risultati individuali. Il lavoro è completato quando i controlli di linearità coprono ogni geometria e ogni campo e hanno esito positivo.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description of the desired feature:
Our forward models for the different geometries (points, prisms, tesseroids) allow to take multiple bodies as inputs, returning a single array as the resulting field generated by every one of these bodies on the computation points.
One of the properties of these forward models is their linearity: the resulting field for all the bodies should be equal to the sum of the individual fields.
Although this property is easily readable from the code, it might be wise to add functions that actually test them.
We could add test_linearity functions for each geometry that compares the resulting field of passing a set of bodies to the resulting field of computing the fields of each one separately and then sum them up.
Through pytests.mark.parametrize we could write a single function per geometry, adding the field as a parameter.
For example:
@pytest.mark.parametrize("field", ("potential", "g_z", ...))
def test_linearity(field):
"""
Test linearity of the forward model
"""
...
Are you willing to help implement and maintain this feature? Yes, but I would love to help anyone motivated to tackle it. 💪🏼
- Lingua principale
- Python
- Stelle
- 309
- Fork
- 91
- Merge medio
- 2g 2h
- PR unite (30g)
- 2
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun 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 fatiando/harmonica
-
Maintenance: pin code linters and add them to dependabotForse già presa @santisoler l’ha presa 36 giorni fa. Apertamaintenance
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 28/100
-
maintenance
Difficoltà 2/5 1-3 ore Idoneità per principianti 45/100
-
documentation
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
Tutte le issue di fatiando/harmonica
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
jbacalso24/mimry#291 ·
I maintainer di solito rispondono entro 1 giorno
-
good first issue
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 82/100
eli-alvarado/us-watchlist-alerts#14 ·
I maintainer di solito rispondono entro 1 giorno
-
from-review-extraction python severity:nit
Difficoltà 2/5 1-3 ore Idoneità per principianti 80/100
LearningCircuit/local-deep-research#7462 ·
I maintainer di solito rispondono entro 2 giorni
-
mermaid_extract.py silently discards single-line state-diagram notes; sequence notes are keptAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
cathrynlavery/diagram-design#441 ·
I maintainer di solito rispondono entro 2 giorni
-
[Cleanup] Include the public header in work_split.cppForse già presa @blozano-tt l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
tenstorrent/tt-metal#60850 ·
I maintainer di solito rispondono entro 1 giorno