Compare the execution time of different implementions of one of the following matrix operations using Einstein notation:
- Trace of an array
- Return a diagonal
- Array axis summations
- Transpositions and permutations
- Matrix multiplication and dot product
- Vector inner and outer products
- Broadcasting, element-wise and scalar multiplication
- Tensor contractions
- Chained array operations, in efficient calculation order
For this you have to complete the following steps:
- Discuss in this repository using issues which matrix operation you want to implement
- Discuss in this repository using issues who will do which task (developing algorithm, documentation, unit test)
- Discuss who should be the main responsible for the repository (the one that can accept merge requests). The main responsible does not have to contribute to the project but gets 21 points instead for managing the repository and merging pull requests.
- Discuss and generate milestones for your project to optimize the timeline of your project.
- Fork this repository
- Generate the necessary files for your task and commit them. Commmit not just the final result but also intermediate steps. (Think of it like saving the file. Everytime you save, commit)
- Create pull requests for your work
- During the project everyone will be assigned a PR to review.
Also use discord for discussing solutions to any issues popping up.
- pay attention to add references to all code you use from somewhere else
- make sure the license of your sources permit to reuse their code
- add references for all factual statements you make
- include https://github.com/ubsuny/CompPhys/blob/main/ReviewPython/EinsteinNotation.ipynb in your homework keeping the above three points in mind
Homework Points | |||
---|---|---|---|
Interaction on own project | |||
Category | min per person | point factor | max points |
Commits | 6 | 1 | 6 |
Pull requests | 5 | 2.5 | |
PR merged | 2 | 1 | 2 |
Review PR | 1 | 2 | 2 |
Issues (not marked duplicates) | 6 | 0.5 | 3 |
Closed Issues | 3 | 0.5 | 1.5 |
# Conversations | 25 | 5 | |
Total | 22 | ||
Shared project points | |||
# Milestones | 18 | 3 | |
# Tags | 0 | 1 | 0 |
Total | 3 | ||
Result | |||
Task completion | 15.5 | 1 | 17 |
Sum | 42 |