-
Notifications
You must be signed in to change notification settings - Fork 158
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* first pass of new projects * Update _projects/2019/sunpy/ndcube_ape14.md Co-Authored-By: nabobalis <nabil.freij@gmail.com> * Update sunkit_image_draft.md * Update sunkit_image_draft.md * Update mag_field_draft.md * Update mag_field_draft.md * Update helioviewer_draft.md * Rename helioviewer_draft.md to helioviewer.md * Rename mag_field_draft.md to mag_field.md * Rename sunkit_image_draft.md to sunkit_image.md
- Loading branch information
Showing
6 changed files
with
268 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
--- | ||
name: HelioViewer Python API Wrapper | ||
desc: Creating a full Python wrapper for https://api.helioviewer.org/docs/v2/. | ||
# add a description of your project | ||
requirements: | ||
- Familiarity with Python | ||
- Some familiarity with Unirest/HTTP requests (ideally) | ||
difficulty: medium | ||
issues: | ||
- https://github.com/sunpy/sunpy/issues/2860 | ||
- https://github.com/sunpy/sunpy/issues/2762 | ||
- https://github.com/sunpy/sunpy/issues/2878 | ||
mentors: | ||
- wafels | ||
- cadair | ||
- TO BE FILLED | ||
initiatives: | ||
- GSOC | ||
- SOCIS | ||
tags: | ||
- python | ||
collaborating_projects: | ||
- sunpy | ||
--- | ||
|
||
#### Description | ||
|
||
This project aims to design and implement a low level Python wrapper around the | ||
unirest API provided by the HelioViewer Project. This would create a new affiliated SunPy package (name up for suggestions). | ||
|
||
Currently SunPy has a `HelioviewerClient` that implements only a handful of the available API. | ||
They are `getClosestImage`, `getJP2Image` and `takeScreenshot` from the Helioviewer API and you can see our code [here.](https://github.com/sunpy/sunpy/blob/master/sunpy/net/helioviewer.py) | ||
|
||
What we want to do is to create a new Python package that will lightly wrap every aspect of the HelioViewer API allowing anyone to create their own helioviewer.org like GUI in Python (this could be part of the project but will depend on the progress). | ||
|
||
To facilitate this, we will need to remove the current code from SunPy and move it to the new affiliated package. | ||
#### Secondary goals | ||
|
||
* Start on a GUI-like interface for the new package, if time permits. | ||
|
||
#### Milestones | ||
|
||
##### Coding starts | ||
|
||
* Engaged with the community and understand the motivation and challenges of the project. | ||
* Have set up a development environment. | ||
|
||
##### To be completed by the Phase 1 Evaluation Deadline | ||
|
||
* Have 33% of the API wrapped. | ||
* Have all code, tests and documentation in GitHub. | ||
|
||
##### To be completed by the Phase 2 Evaluation Deadline | ||
|
||
* Have 66% of the API wrapped. | ||
* Have all code, tests and documentation in GitHub. | ||
|
||
##### To be completed by the end of GSoC | ||
|
||
* All of the API is wrapped within the package. | ||
* Have all code, tests and documentation in GitHub. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
--- | ||
name: Expand the scope of solarbextrapolation. | ||
desc: Add more numerical models and generalize magnetic field extrapolation to spherical coordinates. | ||
requirements: | ||
- Knowledge of vector calculus and differential equations | ||
- Familiar with numerical methods | ||
- Some familiarity with electromagnetism, MHD, potential/force-free magnetic fields (optional) | ||
difficulty: intermediate | ||
issues: | ||
- https://groups.google.com/forum/#!topic/sunpy/ZLu_HoX_lbc | ||
- https://github.com/sunpy/solarbextrapolation/issues/12 | ||
mentors: | ||
- Alex-Ian-Hamilton | ||
- cadair | ||
initiatives: | ||
- GSOC | ||
- SOCIS | ||
initiatives: | ||
- GSOC | ||
- SOCIS | ||
tags: | ||
- python | ||
- cython | ||
- numpy | ||
- numba | ||
collaborating_projects: | ||
- sunpy | ||
--- | ||
|
||
#### Description | ||
|
||
This project aims to improve the `solarbextrapolation` package by relaxing the small-angle approximation and allowing for extrapolation of global magnetic fields, i.e. 3D vector fields on a scale larger than an active region. | ||
Furthermore, we want to add support for another numerical model called Potential Field Source Surface ([PFSS](https://github.com/antyeates1983/pfss)). | ||
|
||
This will involve extensive modifications to the numerical method used to perform the field extrapolation as well as developing methods for coordinate transformations between the magnetogram coordinate system and the spherical coordinate system of the derived vector field. | ||
|
||
The main challenge of this project will be creating a general 3D Map class similar to [`Map`](http://docs.sunpy.org/en/stable/code_ref/map.html) in SunPy. | ||
Currently, the `solarbextrapolation` package uses a Map3D class that is limited to Cartesian coordinates and has no support for coordinate transformations. This new Map3D class will have support for 3D coordinates through the use of the [SunPy coordinates module](http://docs.sunpy.org/en/stable/guide/units-coordinates.html#physical-coordinates-in-sunpy) | ||
It is expected that this new object will serve as a prototype for a first-class data type in the core SunPy package. | ||
|
||
#### Milestones | ||
|
||
##### Coding starts | ||
|
||
* Engaged with the community and understand the motivation and challenges of the project. | ||
* Have set up a development environment. | ||
|
||
##### To be completed by the Phase 1 Evaluation Deadline | ||
|
||
* Add PFSS modelling to the package. | ||
* Have all code, tests and documentation in GitHub. | ||
|
||
##### To be completed by the Phase 2 Evaluation Deadline | ||
|
||
* Develop a coordinate-aware 3D Map class | ||
* Have all code, tests and documentation in GitHub. | ||
|
||
##### To be completed by the end of GSoC | ||
|
||
* Use 3D Map class for global field extrapolations | ||
* Have all code, tests and documentation in GitHub. | ||
* Improvements to the documentation and examples | ||
|
||
##### Secondary goals | ||
|
||
* Performance improvements | ||
* Addition of more advanced extrapolators, e.g. non-linear force-free field | ||
* Better visualization methods |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
--- | ||
name: Region of Interest | ||
desc: Meta-Object creation for holding temporal and spatial features. | ||
# add a description of your project | ||
requirements: | ||
- Familiarity with Python | ||
- Understanding of design patterns | ||
difficulty: High | ||
issues: | ||
- https://github.com/sunpy/sunpy/issues/164 | ||
- https://github.com/sunpy/sunkit-image/issues/2 | ||
mentors: | ||
- FIND SOMEONE MAYBE | ||
initiatives: | ||
- GSOC | ||
- SOCIS | ||
tags: | ||
- python | ||
collaborating_projects: | ||
- sunpy | ||
--- | ||
|
||
#### Description | ||
|
||
This project aims to design and implement an object that could be used to define a Region Of Interest (ROI) in any physical dimension (such as spatial area, temporal range or spectral window) and interact with the rest of data types used in SunPy. | ||
|
||
For example, a region of interest could be a particular area in the Sun at a particular moment in time. | ||
Therefore, that object should contain the extent of such area, its contour and the time when it was observed. | ||
It also needs other information, such as the coordinate system that it uses, the image from which it was created and the wavelength | ||
in which was observed. | ||
|
||
That region of interest should interact with the data types available in sunpy like [`sunpy.Map`](https://github.com/sunpy/sunpy/tree/master/sunpy/map) by plotting the box containing such region and being aware of difference in time or observational point. | ||
So, it needs to be spatial and temporal aware. | ||
|
||
Additionally, the object needs to understand (be able to parse in) features and events catalogued in the [HEK](http://www.lmsal.com/hek/hek_isolsearch.html) and [HELIO](http://hfc.helio-vo.eu/) databases. | ||
|
||
It is often useful to interactively select a region on an image using a mouse. | ||
For example, a user might want to outline a particular region in an image, extract that region only, or integrate the emission in that region. | ||
It would be interesting if we could supply the capability to interactively select a region and return the co-ordinates of the selected region. | ||
This might be extra work at the end, if time permits. | ||
|
||
#### Milestones | ||
|
||
##### Coding starts | ||
|
||
* Engaged with the community and understand the motivation and challenges of the project. | ||
* Have set up a development environment. | ||
|
||
##### To be completed by the Phase 1 Evaluation Deadline | ||
|
||
* Fill in. | ||
* Have all code, tests and documentation in GitHub. | ||
|
||
##### To be completed by the Phase 2 Evaluation Deadline | ||
|
||
* Fill in. | ||
* Have all code, tests and documentation in GitHub. | ||
|
||
##### To be completed by the end of GSoC | ||
|
||
* Fill in. | ||
* Have all code, tests and documentation in GitHub. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
--- | ||
name: Develop sunkit-image | ||
desc: Add features to a new package for solar image analysis. | ||
requirements: | ||
- Good understanding of Python. | ||
- Some understanding of mathematics. | ||
- Enthusiasm to learn image processing. | ||
difficulty: medium | ||
issues: | ||
- https://github.com/sunpy/sunkit-image/issues/1 | ||
- https://github.com/sunpy/sunkit-image/issues/3 | ||
- https://github.com/sunpy/sunkit-image/issues/5 | ||
- https://github.com/sunpy/sunkit-image/issues/6 | ||
- https://github.com/sunpy/sunkit-image/issues/7 | ||
- https://github.com/sunpy/sunkit-image/issues/9 | ||
- https://github.com/sunpy/sunkit-image/issues/10 | ||
- https://github.com/sunpy/sunkit-image/issues/13 | ||
mentors: | ||
- nabobalis | ||
- wafels | ||
initiatives: | ||
- GSOC | ||
- SOCIS | ||
tags: | ||
- python | ||
- numpy | ||
- cython | ||
collaborating_projects: | ||
- sunpy | ||
--- | ||
|
||
#### Description | ||
|
||
There have been various proposals for adding image processing and manipulation code to the SunPy library. | ||
SunPy has decided that this functionality will instead reside in an affiliated package, named [sunkit-image.](https://github.com/sunpy/sunkit-image/) | ||
This project will implement the initial functionality with a broad scope. | ||
|
||
We have a range of open issues that form the starting core of the project and contain more concreate steps and information about each feature. | ||
|
||
This project should achieve most or all of the following goals (roughly in this order): | ||
|
||
1. Implement the [normalizing-radial-graded filter (NRGF)](http://adsabs.harvard.edu/abs/2006SoPh..236..263M). | ||
2. Port the Multi-Scale Gaussian Normalisation (MGN) code from [#1899](https://github.com/sunpy/sunpy/pull/1899). | ||
3. Implement the [OCCULT-2 algorithm](http://arxiv.org/abs/1307.5046) for coronal loop tracing. | ||
4. Implement image re-sampling as described [here](https://link.springer.com/content/pdf/10.1023/B:SOLA.0000021743.24248.b0.pdf) through updating [this pull request](https://github.com/astropy/reproject/pull/52) to the Astropy [image resampling](https://reproject.readthedocs.io/en/stable/) repository. | ||
5. Implement the [soft morphological filtering of solar images](https://www.aanda.org/articles/aa/pdf/2006/38/aa4852-06.pdf) | ||
|
||
There are more complex feature we would like but will only be looked at once the previous features have been implemented. | ||
|
||
6. Refactor and write a Python wrapper for [FLCT](https://arxiv.org/abs/0712.4289) [code](http://solarmuri.ssl.berkeley.edu/overview/publicdownloads/software.html). | ||
7. Implement image alignment using feature detection and tracking. [Example](http://scikit-image.org/docs/dev/auto_examples/features_detection/plot_brief.html) | ||
8. Have developed an outline of the implementation of the image resampling code in the context of the Astropy [reproject](https://github.com/astropy/reproject) module. | ||
|
||
#### Milestones | ||
|
||
##### Coding starts | ||
|
||
* Have familiarized yourself with the algorithms. | ||
* Have set up a development environment. | ||
|
||
##### To be completed by the Phase 1 Evaluation Deadline | ||
|
||
* Have implemented, tested and documented the NRGF code. | ||
* Have implemented, tested and documented the MGN code. | ||
|
||
##### To be completed by the Phase 2 Evaluation Deadline | ||
|
||
* Have successfully merged the NRGF and MGN code. | ||
* Have implemented OCCULT-2. | ||
|
||
##### To be completed by the end of GSoC | ||
|
||
* Have tested, documented and merged the OCCULT-2 code. |