Git Product home page Git Product logo

gropt's Introduction

GrOpt Toolbox

A toolbox for MRI gradient optimization (GrOpt)

About

The toolbox allows for gradient waveforms to be designed that better utilize available gradient hardware performance, while allowing for additional constraints to be flexibly added to control for a range of desired performances. Additionally, the optimization has been fine-tuned to operate in real-time, allowing for flexible implementation on vendor-agnostic scanner hardware for on-the-fly usage.

Installation

The optimization is written in C and can be found in the src/ directory.

A very basic idea of how to compile for C is included in src/make.txt, however modifications would need to made for input and output as it only runs a test case when run in C. For easier usage use one of the wrappers:

Python

The setup.py file will build the python module. To build you can run python setup.py build_ext --inplace.

For MacOS you may need to change the compiler being used, in the first few lines of setup.py. It is hard coded to use a homebrew install of gcc, however any compiler command should work here.

Matlab

See make.m for an example compile

More

An example use case is shown in python/demo_v1.ipynb which github will render for you in the browser if you click on it.

gropt's People

Contributors

mloecher avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.