{ "info": { "author": "Craig Jones", "author_email": "craig@brechmos.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "===========\nT2Stimulate\n===========\n\n\n.. image:: https://img.shields.io/pypi/v/t2stimulate.svg\n :target: https://pypi.python.org/pypi/t2stimulate\n\n.. image:: https://img.shields.io/travis/brechmos/t2stimulate.svg\n :target: https://travis-ci.org/brechmos/t2stimulate\n\n.. image:: https://readthedocs.org/projects/t2stimulate/badge/?version=latest\n :target: https://t2stimulate.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\n\n.. image:: https://pyup.io/repos/github/brechmos/t2stimulate/shield.svg\n :target: https://pyup.io/repos/github/brechmos/t2stimulate/\n :alt: Updates\n\n\n\nMRI T2 decay curve simulation with imperfect excitation pulse (B1)\n\n\n* Free software: GNU General Public License v3\n* Documentation: https://t2stimulate.readthedocs.io.\n\n\nA T2 multi-echo decay curve in MRI is traditionally modeled as a decaying exponential with one or more exponential\ncomponents. This assumes the refocusing pulse flip angle is at or near 180 degrees, and, if not, that other\ngradients are added in as spoilers to remove the signal from stimulated echoes.\n\nThe stimulated echoes were modeled many years ago in a paper (ref) and were then implemented in simulation code and were\nfound to be sufficient to use for fitting multi-echo decay curves from non-180 degree refocussing\npulse sequences.\n\nBelow is an example of three curves of a 32 echo MRI Pulse sequence with TE=10ms and refocusing pulse\nflip angles of 180 degrees, 160 degrees and 140 degrees. The code was:\n\n.. code-block::\n\n import matplotlib.pyplot as plt\n import numpy as np\n\n from t2stimulate.simulate import stimulate\n\n # Set a couple of parameters\n num_echoes = 32\n tau = 5\n T1 = 1000\n\n te = 2*tau*np.arange(1, num_echoes+1)\n\n curve_140 = stimulate(alpha=140 / 180 * np.pi, num_echoes=num_echoes, T1=450, T2=80, tau=tau)\n curve_160 = stimulate(alpha=160 / 180 * np.pi, num_echoes=num_echoes, T1=450, T2=80, tau=tau)\n curve_180 = stimulate(alpha=180 / 180 * np.pi, num_echoes=num_echoes, T1=450, T2=80, tau=tau)\n\n plt.figure(1)\n plt.clf()\n\n plt.plot(te, curve_180, 'bo-')\n plt.plot(te, curve_160, 'gd-')\n plt.plot(te, curve_140, 'rx-')\n plt.xlabel('TE (ms)')\n plt.ylabel('Signal (arb)')\n plt.grid('on')\n\n plt.legend(['B1=180\u00b0', 'B1=160\u00b0', 'B1=140\u00b0'])\n\n plt.axes((0.6, 0.3, 0.25, 0.3))\n\n plt.plot(te, curve_180, 'bo-')\n plt.plot(te, curve_160, 'gd-')\n plt.plot(te, curve_140, 'rx-')\n plt.xlabel('TE (ms)')\n plt.ylabel('Signal (arb)')\n plt.grid('on')\n plt.xlim((200,250))\n plt.ylim((0.03, 0.1))\n\n plt.show()\n\nAnd the resulting plot:\n\n.. image:: https://github.com/brechmos/t2stimulate/blob/master/images/ex1.png?raw=true\n :alt: Example image\n :align: center\n\n\n\nFeatures\n--------\n\n* TODO\n\nCredits\n-------\n\nThis package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n\n\n=======\nHistory\n=======\n\n0.1.0 (2019-06-25)\n------------------\n\n* First release on PyPI.\n* Basic stimulated echo simulation written with tests.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/brechmos/t2stimulate", "keywords": "t2stimulate", "license": "GNU General Public License v3", "maintainer": "", "maintainer_email": "", "name": "t2stimulate", "package_url": "https://pypi.org/project/t2stimulate/", "platform": "", "project_url": "https://pypi.org/project/t2stimulate/", "project_urls": { "Homepage": "https://github.com/brechmos/t2stimulate" }, "release_url": "https://pypi.org/project/t2stimulate/0.1.0/", "requires_dist": null, "requires_python": "", "summary": "MRI T2 decay curve simulation with imperfect excitation pulse (B1)", "version": "0.1.0" }, "last_serial": 5458663, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "46d7fe406c6ce650406fa5dda3b7a9bc", "sha256": "cab46fa11669e8cadd9bef1632c5bea2463edb0b36a12214845d23e1550e3582" }, "downloads": -1, "filename": "t2stimulate-0.1.0.tar.gz", "has_sig": false, "md5_digest": "46d7fe406c6ce650406fa5dda3b7a9bc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10947, "upload_time": "2019-06-27T20:00:02", "url": "https://files.pythonhosted.org/packages/72/6e/ef3c5e9c56215da047360d8809dbc589da10755aef15118a413dc100f703/t2stimulate-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "46d7fe406c6ce650406fa5dda3b7a9bc", "sha256": "cab46fa11669e8cadd9bef1632c5bea2463edb0b36a12214845d23e1550e3582" }, "downloads": -1, "filename": "t2stimulate-0.1.0.tar.gz", "has_sig": false, "md5_digest": "46d7fe406c6ce650406fa5dda3b7a9bc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10947, "upload_time": "2019-06-27T20:00:02", "url": "https://files.pythonhosted.org/packages/72/6e/ef3c5e9c56215da047360d8809dbc589da10755aef15118a413dc100f703/t2stimulate-0.1.0.tar.gz" } ] }