Skip to content

Supplementary material for the paper "Frequency-based nanoparticle sensing over large field ranges using the ferromagnetic resonances of a magnetic nanodisc"

License

Notifications You must be signed in to change notification settings

rlc2v07/paper-supplement-nanoparticle-sensing

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Frequency-based nanoparticle sensing over large field ranges using the ferromagnetic resonances of a magnetic nanodisc: supplementary material

MIT license Binder

This repository accompanies the paper "Frequency-based nanoparticle sensing over large field ranges using the ferromagnetic resonances of a magnetic nanodisc". It provides the data underlying the figures in the paper as well as Jupyter notebooks to reproduce those figures. The latest version of this repository can be found at https://github.com/maxalbert/paper-supplement-nanoparticle-sensing


Authors: Maximilian Albert, Marijan Beg, Dmitri Chernyshenko, Marc-Antonio Bisotti, Rebecca L. Carey, Hans Fangohr and Peter Metaxas.

Contents

The directory notebooks/ contains Jupyter notebooks for the relevant figures in the paper. On Github you can view them directly in the browser:

The raw data is available in the file data/eigenmode_info_data_frame.csv, which is a CSV (= comma-separated values) file containing the simulation parameters and computed resonant frequencies for all performed simulations. All notebooks use this data to generate the figures. The data format is explained in the notebook Explanation of the data format.

Executing the notebooks

Using a cloud Jupyter server via Binder (no installation required)

The easiest way to execute the notebooks without installing anything is to launch a cloud Jupyter server using Binder. You can access it here:

http://mybinder.org/repo/maxalbert/paper-supplement-nanoparticle-sensing

Running the notebooks locally on your machine

In order to run the notebooks on your own computer, follow the steps below.

  1. Clone this repository and change into the newly created directory:

    git clone https://github.com/maxalbert/paper-supplement-nanoparticle-sensing.git
    cd paper-supplement-nanoparticle-sensing
    
  2. Make sure that you have all required dependencies installed (see below; we recommend the installation using conda if possible).

  3. Start a notebook server:

    jupyter notebook
    

    This will open a browser window with a dashboard showing the contents of this repository.

  4. Navigate to the notebooks/ folder and open any of the .ipynb files. You can reproduce the associated figure by selecting the menu item Cell -> Run All.

Required dependencies

In order to execute the notebooks, the following dependencies are required.

  • python
  • ipython
  • jupyter
  • matplotlib (>= 1.5)
  • numexpr
  • pandas (>= 0.18)
  • statsmodels

You can install them using pip as follows:

pip install ipython jupyter matplotlib numexpr pandas statsmodels

However, be aware that this may potentially take a long time (and you may need to install additional dependencies via your distribution's package manager).

Alternatively, if you have conda installed (which comes with the Anaconda distribution or can be installed via Miniconda) then the recommended (and much faster) way to install these dependencies is by running the following command from the toplevel of this repository:

conda env create -f environment.yml

This will create a conda environment called particle-sensing which contains all the required dependencies. Don't forget to activate the new environment before running the notebooks:

source activate particle-sensing  # on Linux/Unix
activate particle-sensing         # on Windows

About

Supplementary material for the paper "Frequency-based nanoparticle sensing over large field ranges using the ferromagnetic resonances of a magnetic nanodisc"

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 99.9%
  • Other 0.1%