Skip to content
This repository was archived by the owner on Jun 30, 2022. It is now read-only.
/ mit_project Public archive

Repository for code related to our 4th year project in Magnetic Induction Tomography, modelling the forward and inverse problems.

License

Notifications You must be signed in to change notification settings

bencarter4185/mit_project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mit_project

Repository for code related to our 4th year project in Magnetic Induction Tomography, modelling the forward and inverse problems. Currently working on a Biot-Savart solver in lieu of tackling the forward problem.

Table of Contents

Requirements

Python 3.10 or higher

Modules

numpy, matplotlib, scipy

To Do

  • Ascertain whether discretizing/chunking the wires is strictly necessary for square loops.
    • Done. Wire discretization unnecessary for circular current loops, but necessary for square loops.
  • Compare the accuracy of the Biot-Savart solver in a test vs. a known analytical solution. (Circular loop as analytical solutions for square loops can be hard to come by)
    • Done. Completed for both square and circular loops. Code can be found in:
mit_project
|
└───modules
    |
    └───tests
        |
        └───validation tests
            |    circular_loop_validation.py
            |    square_loop_validation.py
  • Implement a smarter discretization than taking the midpoints of each discretized segment. (Simpson's Rule?)
    • Not implemented. Currently not seen as necessary given the sufficient accuracy of the solver using the midpoint rule.
  • Write a configparser to parse a "parameters.txt" or "config.txt" file. Code should then accept some parameters for square/circular loops etc. and create the requisite Wire objects; performing Biot-Savart calculations for a given set of points.
    • Done. Implemented config in JSON files, parsing them to dictionaries. Documentation/lab book stuff to follow.
  • Implement a Biot-Savart solver for multiple coils/wires at once and test.
  • Improve documentation on how the code works/update lab book as necessary.
  • Write some more unit tests:
    • Test for Wire object creation
    • Test for Biot-Savart calculations
  • Write an end-to-end simulation which makes a ring of circular coils (maybe 8 at first) all surrounding the origin in the x-y plane. Write some logic to plot a 2d colourmap/surface plot to show areas of high and low magnetic field, B.

About

Repository for code related to our 4th year project in Magnetic Induction Tomography, modelling the forward and inverse problems.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages