Hello,
My name is Peeyush, I've been a hobby developer since when I was in school and I'm currently a first year undergraduate student enrolled in a
Computer Science and Applied Mathematics programme at
Indraprastha Institute of Information Technology, Delhi, India.
I want to work on 3 related things:
- Work on the tensor module so that we could refactor the whole matrix module to internally use tensors.
- Interoperability between scalars and rank 0 tensors
- Implement a module for creating different Vector Spaces (Similar in application to coordinate systems functionality in vector module, but for n-dimensional vectors)
I've taken a course in Linear Algebra but it did not cover tensors so I'll be teaching myself tensors in the summer as I go along. I have a lot of informal software development experience (working on own projects and libraries) and I'm very comfortable using git, writing documentation, unit tests, and code organization.
I originally wanted to contact @mrocklin and discuss these ideas because he is listed as only interested party on the wiki page for
Linear Algebra Vision (a page which the ideas page for tensor core links to), but I'm not sure if he is actively involved with the project anymore and I'm unsure who to ask.
I specifically want to discuss the time each of these 3 might take. The ideas page mentions that "SymPy has a number of disconnected projects related to Tensor/Linear algebra.
These include Matrices, Sparse Matrices, Matrix Expressions, Indexed (for code
generation), Geometric Algebra, Differential Geometry, Tensor Canonicalization,
and various projects in Physics." I've had a quick look at the current source code for matrices and tensors, but I still need some help breaking down my goals into sub-tasks while taking care of all the disconnected projects that are mentioned, and identifying how much time they may take, and if it is suitable for a GSoC proposal (too much / too less work) or not.
Sincerely,
Peeyush Kushwaha