secsy

Python code for working with Spherical Elementary Current Systems (SECS)

https://github.com/klaundal/secsy

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.1%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Python code for working with Spherical Elementary Current Systems (SECS)

Basic Info
  • Host: GitHub
  • Owner: klaundal
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 7.85 MB
Statistics
  • Stars: 6
  • Watchers: 3
  • Forks: 6
  • Open Issues: 1
  • Releases: 1
Created almost 6 years ago · Last pushed about 1 year ago
Metadata Files
Readme License Citation

README.rst

secsy Overview
==============
.. image:: https://zenodo.org/badge/257848052.svg
   :target: https://zenodo.org/badge/latestdoi/257848052

**A Python module for working with Spherical Elementary Current Systems (SECS) and cubed sphere projections**. If and only if those words made sense to you, you may find this module useful. Here are some main features:

- ``get_SECS_J_G_matrices``: Function that calculate matrices that relate SECS amplitudes and current densities (curl-free or divergence-free), with optional correction for singularities at the poles
- ``get_SECS_B_G_matrices``: Function that calculates matrices that relate SECS amplitudes and magnetic fields
- ``CSprojection``: Class that sets up a cubed sphere projection, with a single cube face centered on an arbitrary longitude and latitude, and with an arbitrary orientation
- ``CSgrid``: Class that sets up a grid with a given projection, resolution, and extent. The class contains functions that make differentiation matrices that take into account distortion effects. 

Check doc strings for more information, or look at the example notebook. Or get in touch.

The SECS functions and cubed sphere stuff can be used independently. They are in the same module because we find that cubed sphere grids work well for SECS analysis. 

Dependencies
============
You should have the following modules installed:

- numpy
- scipy
- cartopy

Install
=======
Use git. Clone the repository like this::

    git clone https://github.com/klaundal/secsy

If the secsy folder is somewhere Python knows about (for example your working directory, or in the PYTHONPATH environment variable), it will work as demonstrated above.


References
==========
Here is the reference for Cubed Sphere projections:
    Ronchi C., Iacono R., Paolucci, P.S., The “Cubed Sphere”: A New Method for the Solution of Partial Differential Equations in Spherical Geometry, Journal of Computational Physics, Volume 124, Issue 1, 1996, Pages 93-114, ISSN 0021-9991, https://doi.org/10.1006/jcph.1996.0047.


Here is a good reference for SECS analysis: 
    Vanhamäki H., Juusola L. (2020) Introduction to Spherical Elementary Current Systems. In: Dunlop M., Lühr H. (eds) Ionospheric Multi-Spacecraft Analysis Tools. ISSI Scientific Report Series, vol 17. Springer, Cham. https://doi.org/10.1007/978-3-030-26732-2_2

Owner

  • Name: Karl M. Laundal
  • Login: klaundal
  • Kind: user

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: secsy
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Karl
    family-names: Laundal
    orcid: 'https://orcid.org/0000-0001-5028-4943'
    affiliation: >-
      Department of Physics and Technology, University in
      Bergen, Norway
    email: karl.laundal@uib.no
  - given-names: Amalie
    family-names: Hovland
    affiliation: >-
      Department of Physics and Technology, University in
      Bergen, Norway
    orcid: 'https://orcid.org/0000-0001-5028-4943'
  - orcid: 'https://orcid.org/0000-0001-7412-4936'
    given-names: Spencer
    family-names: Hatch
    affiliation: >-
      Department of Physics and Technology, University in
      Bergen, Norway
  - given-names: Jone
    family-names: Reistad
    affiliation: >-
      Department of Physics and Technology, University in
      Bergen, Norway
    orcid: 'https://orcid.org/0000-0003-3509-5479'
  - given-names: Simon
    affiliation: >-
      Department of Physics and Technology, University in
      Bergen, Norway
    family-names: Walker
    orcid: 'https://orcid.org/0000-0001-5510-3726'
  - given-names: Anders
    family-names: Ohma
    affiliation: >-
      Department of Physics and Technology, University in
      Bergen, Norway
    orcid: 'https://orcid.org/0000-0002-1234-6725'
  - given-names: Michael
    family-names: Madelaire
    affiliation: >-
      Department of Physics and Technology, University in
      Bergen, Norway
    orcid: 'https://orcid.org/0000-0002-5631-7344'   
  - given-names: Ashley
    family-names: Smith
    orcid: 'https://orcid.org/0000-0001-5198-9574'
    affiliation: 'University of Edinburgh, UK'
identifiers:
  - type: doi
    value: 10.5281/zenodo.5962562
    description: Zenodo
  - type: doi
    value: 10.3389/fspas.2022.1025823
    description: >-
      Paper in Frontiers of Astronomy and Space Sciences:
      "The Lompe code: A Python toolbox for ionospheric data
      analysis"
abstract: >-
  A Python module for working with Spherical Elementary
  Current Systems (SECS) and cubed sphere projections
license: MIT

GitHub Events

Total
  • Watch event: 1
  • Push event: 1
  • Pull request event: 2
  • Create event: 2
Last Year
  • Watch event: 1
  • Push event: 1
  • Pull request event: 2
  • Create event: 2