[FEA]: Identity matrix
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 2.2k
- Forks
- 155
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Is this a new feature, an improvement, or a change to existing functionality?
New Feature
How would you describe the priority of this feature request?
Critical (currently preventing usage)
Please provide a clear description of problem this feature solves
Have trouble solving small linear systems using iterative methods without the support of creating identity matrix(tile).
Feature Description
Need a way to create identity tile (1s on the diagonal, 0s elsewhere).
It will be great if diag is also supported.
Describe your ideal solution
Proposed API would be:
ct.identity(4, dtype=ct.float32)
# returns Tile[float32, (4, 4)]
# for any tile `values` with type Tile[float32, (8)]
ct.diag(values)
# returns Tile[float32, (8, 8)]
Describe any alternatives you have considered
No response
Additional context
No response
Contributing Guidelines
- I agree to follow cuTile Python's contributing guidelines
- I have searched the open feature requests and have found no duplicates for this feature request
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit der Durchsicht der cuTile Python API und der Richtlinien für Beiträge und vergleiche anschließend die vorgeschlagenen Signaturen von ct.identity und ct.diag mit den bestehenden öffentlichen APIs. Die Aufgabe ist abgeschlossen, wenn beide Operationen mit den angeforderten Tile-Formen und dem erwarteten dtype-Verhalten verfügbar sind und die in diesem Issue beschriebenen Beispiele abgedeckt sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- backend-api-design
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100