yeadon


Nameyeadon JSON
Version 1.5.0 PyPI version JSON
download
home_pagehttps://github.com/chrisdembia/yeadon/
SummaryEstimates the inertial properties of a human.
upload_time2024-06-22 06:41:49
maintainerNone
docs_urlhttps://pythonhosted.org/yeadon/
authorChris Dembia
requires_pythonNone
licenseLICENSE.txt
keywords human inertia yeadon sports biomechanics gymnastics
VCS
bugtrack_url
requirements numpy numpydoc pyyaml
Travis-CI No Travis.
coveralls test coverage No coveralls.
            yeadon
======

.. image:: https://img.shields.io/pypi/v/yeadon.svg
   :target: https://pypi.python.org/pypi/yeadon/
   :alt: Latest PyPI version

.. image:: https://img.shields.io/pypi/dm/yeadon.svg
   :target: https://pypi.python.org/pypi/yeadon/
   :alt: Number of PyPI downloads

.. image:: https://anaconda.org/conda-forge/yeadon/badges/version.svg
   :target: https://anaconda.org/conda-forge/yeadon

.. image:: https://readthedocs.org/projects/yeadon/badge/?version=latest
   :alt: Documentation Status
   :scale: 100%
   :target: https://yeadon.readthedocs.org/en/latest/?badge=latest

.. image:: https://zenodo.org/badge/doi/10.5281/zenodo.15770.svg
   :target: http://dx.doi.org/10.5281/zenodo.15770

.. image:: https://github.com/chrisdembia/yeadon/actions/workflows/runtests.yml/badge.svg

This package calculates the masses, center of mass positions, and inertia
tensors that correspond to the human inertia model developed by Yeadon in
(Yeadon, 1990). The package allows for the input of both measurements and
configuration variables (joint angles), and provides 3D visualization using the
MayaVi package. See the online documentation at
`<http://yeadon.readthedocs.org/>`_.

References
==========

M. R. Yeadon, 1990. The Simulation of Aerial Movement-ii. Mathematical Inertia
Model of the Human Body. Journal of Biomechanics, 23:67-74.

Directories
===========

- ``yeadon/`` contains the python source files for the yeadon package.
- ``doc/`` contains source documents for building sphinx documentation.
- ``misc/`` contains figures and template input files.
- ``misc/samplemeasurements/`` contains sample measurement input files.

Installing
==========

This package was developed for Python 3.8+.

Dependencies
------------

`yeadon` depends on the following widely-used packages:

- setuptools_ for installation
- NumPy_ for computations
- PyYAML_ for parsing input files

.. _setuptools: http://pythonhosted.org/setuptools
.. _NumPy: http://numpy.scipy.org
.. _PyYAML: http://pyyaml.org

The following packages are optional:

- MayaVi_ for visualization and GUI interaction
- nose_ for tests
- Sphinx_ to create documentation
- numpydoc_ Sphinx extension for NumPy-style documentation formatting

.. _MayaVi: http://mayavi.sourceforge.net
.. _nose: https://nose.readthedocs.org
.. _Sphinx: http://sphinx.pocoo.org
.. _numpydoc: http://pythonhosted.org/numpydoc

Getting the dependencies
------------------------

Option 1: Scientific python distributions
`````````````````````````````````````````

Most `scientific python distributions
<http://www.scipy.org/install.html#scientific-python-distributions>`_ provide
all of these dependencies and it is often easiest to install one of them to get
started. Once you have a distribution, you can install the yeadon package. This
is the best solution for Windows users.

Option 2: Operating system package manager
``````````````````````````````````````````

In some operating systems, the dependencies can also be obtained from the
operating system's package manager. For example, in Debian systems, you should
be able to obtain all of these packages by opening a terminal window and
typing::

   $ # prepend sudo to each line below if you desire a system install
   $ apt-get install python3-setuptools python3-numpy python3-yaml # required
   $ apt-get install python3-nose python3-sphinx python3-numpydoc mayavi2 # optional packages

For other operating systems (e.g. Windows or Mac), visit the websites for the
packages for installation instructions.

Option 3: Building dependencies from source
```````````````````````````````````````````

This option is required if you want to use `yeadon` in a virtualenv. You can
build the dependencies from source and then install them by using a tool like
`pip`::

    $ python -m pip install numpy PyYAML  # required
    $ python -m pip install mayavi  # optional
    $ python -m pip install nose sphinx numpydoc  # development tools

or you can obtain the source code, perhaps from GitHub_, and install the
packages manually.

.. _GitHub: http://github.com

Getting yeadon
--------------

Once you've obtained the dependencies, you can install `yeadon`. The
easiest way to download and install the `yeadon` package is by using a tool
like `pip` to obtain the package from the Python Package Index (PyPi)::

   $ python -m pip install yeadon

You can also obtain an archive of the package at the Python Package Index
(`<https://pypi.python.org/pypi/yeadon>`_), and then install the package on your
own by executing the following from the root directory of the package::

   $ python setup.py install

On Unix, you can obtain the package source code and install it without leaving
your terminal::

   $ # change X.X.X to the desired version
   $ wget https://pypi.python.org/packages/source/y/yeadon/yeadon-X.X.X.tar.gz
   $ tar -zxfv yeadon-X.X.X.tar.gz
   $ cd yeadon-X.X.X.tar.gz
   $ python setup.py install

Run the tests with::

   $ python setup.py nosetests

Building the documentation
==========================

You can build the yeadon HTML documentation if you have Sphinx by typing the
following from the root directory of the yeadon source files::

   $ cd doc/
   $ make html

You can open the documentation in your favorite web browser::

   $ firefox _build/html/index.html

If you have a LaTeX distribution installed you can build the LaTeX docs with::

   $ cd doc/
   $ make latexpdf

and view the document with your preferred PDF viewer::

   $ evince _build/latex/yeadon.pdf

Note that to generate documentation, one also needs the `numpydoc` package.
Alternatively, one can just access the documentation through the `PyPi` site.

Usage
=====

Once the package is installed you can start the program with::

   $ yeadon

If you have MayaVi installed, the GUI will launch. If you don't, the text based
UI will launch. You can explicitly specify whether you want to load the GUI or
the UI with command-line flags::

   $ yeadon --gui
   $ yeadon --ui

You can also interact with `yeadon` in a Python interpreter session or Python
script/module via the API by importing the package. For example::

   $ python
   >>> import yeadon

Now you can create a human object with::

   >>> human = yeadon.Human(<measfilename>, <CFGfilename>)

where `<measfilename>` and `<CFGfilename>` are replaced by strings that contain
a relative or absolute path to the appropriate input `.txt` files. For more
basics on how to use a `Human` object, you can go into a python command prompt
and type::

   >>> help(yeadon.Human)

or see the documentation.

You can also start the UI or the GUI from within a Python interpreter by
executing::

   >>> yeadon.start_ui()

or::

   >>> yeadon.start_gui()

See the documentation for more information.

Cite us!
========

If you make use of the yeadon software we would welcome a citation in your
publications. Please cite this software paper:

Dembia C, Moore JK and Hubbard M. An object oriented implementation of the
Yeadon human inertia model, F1000Research 2014, 3:223 (doi:
https://dx.doi.org/10.12688/f1000research.5292.1)

Contact
=======

Feel free to contact Chris Dembia (chris530d, gmail) with any questions or
comments.

All development is handled at `<http://github.com/chrisdembia/yeadon>`_, including
issue tracking.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/chrisdembia/yeadon/",
    "name": "yeadon",
    "maintainer": null,
    "docs_url": "https://pythonhosted.org/yeadon/",
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "human inertia yeadon sports biomechanics gymnastics",
    "author": "Chris Dembia",
    "author_email": "chris530d@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/25/61/0f07901a8425b52e4924150e30992a3541287681e5af3e3055eb5322dab9/yeadon-1.5.0.tar.gz",
    "platform": null,
    "description": "yeadon\n======\n\n.. image:: https://img.shields.io/pypi/v/yeadon.svg\n   :target: https://pypi.python.org/pypi/yeadon/\n   :alt: Latest PyPI version\n\n.. image:: https://img.shields.io/pypi/dm/yeadon.svg\n   :target: https://pypi.python.org/pypi/yeadon/\n   :alt: Number of PyPI downloads\n\n.. image:: https://anaconda.org/conda-forge/yeadon/badges/version.svg\n   :target: https://anaconda.org/conda-forge/yeadon\n\n.. image:: https://readthedocs.org/projects/yeadon/badge/?version=latest\n   :alt: Documentation Status\n   :scale: 100%\n   :target: https://yeadon.readthedocs.org/en/latest/?badge=latest\n\n.. image:: https://zenodo.org/badge/doi/10.5281/zenodo.15770.svg\n   :target: http://dx.doi.org/10.5281/zenodo.15770\n\n.. image:: https://github.com/chrisdembia/yeadon/actions/workflows/runtests.yml/badge.svg\n\nThis package calculates the masses, center of mass positions, and inertia\ntensors that correspond to the human inertia model developed by Yeadon in\n(Yeadon, 1990). The package allows for the input of both measurements and\nconfiguration variables (joint angles), and provides 3D visualization using the\nMayaVi package. See the online documentation at\n`<http://yeadon.readthedocs.org/>`_.\n\nReferences\n==========\n\nM. R. Yeadon, 1990. The Simulation of Aerial Movement-ii. Mathematical Inertia\nModel of the Human Body. Journal of Biomechanics, 23:67-74.\n\nDirectories\n===========\n\n- ``yeadon/`` contains the python source files for the yeadon package.\n- ``doc/`` contains source documents for building sphinx documentation.\n- ``misc/`` contains figures and template input files.\n- ``misc/samplemeasurements/`` contains sample measurement input files.\n\nInstalling\n==========\n\nThis package was developed for Python 3.8+.\n\nDependencies\n------------\n\n`yeadon` depends on the following widely-used packages:\n\n- setuptools_ for installation\n- NumPy_ for computations\n- PyYAML_ for parsing input files\n\n.. _setuptools: http://pythonhosted.org/setuptools\n.. _NumPy: http://numpy.scipy.org\n.. _PyYAML: http://pyyaml.org\n\nThe following packages are optional:\n\n- MayaVi_ for visualization and GUI interaction\n- nose_ for tests\n- Sphinx_ to create documentation\n- numpydoc_ Sphinx extension for NumPy-style documentation formatting\n\n.. _MayaVi: http://mayavi.sourceforge.net\n.. _nose: https://nose.readthedocs.org\n.. _Sphinx: http://sphinx.pocoo.org\n.. _numpydoc: http://pythonhosted.org/numpydoc\n\nGetting the dependencies\n------------------------\n\nOption 1: Scientific python distributions\n`````````````````````````````````````````\n\nMost `scientific python distributions\n<http://www.scipy.org/install.html#scientific-python-distributions>`_ provide\nall of these dependencies and it is often easiest to install one of them to get\nstarted. Once you have a distribution, you can install the yeadon package. This\nis the best solution for Windows users.\n\nOption 2: Operating system package manager\n``````````````````````````````````````````\n\nIn some operating systems, the dependencies can also be obtained from the\noperating system's package manager. For example, in Debian systems, you should\nbe able to obtain all of these packages by opening a terminal window and\ntyping::\n\n   $ # prepend sudo to each line below if you desire a system install\n   $ apt-get install python3-setuptools python3-numpy python3-yaml # required\n   $ apt-get install python3-nose python3-sphinx python3-numpydoc mayavi2 # optional packages\n\nFor other operating systems (e.g. Windows or Mac), visit the websites for the\npackages for installation instructions.\n\nOption 3: Building dependencies from source\n```````````````````````````````````````````\n\nThis option is required if you want to use `yeadon` in a virtualenv. You can\nbuild the dependencies from source and then install them by using a tool like\n`pip`::\n\n    $ python -m pip install numpy PyYAML  # required\n    $ python -m pip install mayavi  # optional\n    $ python -m pip install nose sphinx numpydoc  # development tools\n\nor you can obtain the source code, perhaps from GitHub_, and install the\npackages manually.\n\n.. _GitHub: http://github.com\n\nGetting yeadon\n--------------\n\nOnce you've obtained the dependencies, you can install `yeadon`. The\neasiest way to download and install the `yeadon` package is by using a tool\nlike `pip` to obtain the package from the Python Package Index (PyPi)::\n\n   $ python -m pip install yeadon\n\nYou can also obtain an archive of the package at the Python Package Index\n(`<https://pypi.python.org/pypi/yeadon>`_), and then install the package on your\nown by executing the following from the root directory of the package::\n\n   $ python setup.py install\n\nOn Unix, you can obtain the package source code and install it without leaving\nyour terminal::\n\n   $ # change X.X.X to the desired version\n   $ wget https://pypi.python.org/packages/source/y/yeadon/yeadon-X.X.X.tar.gz\n   $ tar -zxfv yeadon-X.X.X.tar.gz\n   $ cd yeadon-X.X.X.tar.gz\n   $ python setup.py install\n\nRun the tests with::\n\n   $ python setup.py nosetests\n\nBuilding the documentation\n==========================\n\nYou can build the yeadon HTML documentation if you have Sphinx by typing the\nfollowing from the root directory of the yeadon source files::\n\n   $ cd doc/\n   $ make html\n\nYou can open the documentation in your favorite web browser::\n\n   $ firefox _build/html/index.html\n\nIf you have a LaTeX distribution installed you can build the LaTeX docs with::\n\n   $ cd doc/\n   $ make latexpdf\n\nand view the document with your preferred PDF viewer::\n\n   $ evince _build/latex/yeadon.pdf\n\nNote that to generate documentation, one also needs the `numpydoc` package.\nAlternatively, one can just access the documentation through the `PyPi` site.\n\nUsage\n=====\n\nOnce the package is installed you can start the program with::\n\n   $ yeadon\n\nIf you have MayaVi installed, the GUI will launch. If you don't, the text based\nUI will launch. You can explicitly specify whether you want to load the GUI or\nthe UI with command-line flags::\n\n   $ yeadon --gui\n   $ yeadon --ui\n\nYou can also interact with `yeadon` in a Python interpreter session or Python\nscript/module via the API by importing the package. For example::\n\n   $ python\n   >>> import yeadon\n\nNow you can create a human object with::\n\n   >>> human = yeadon.Human(<measfilename>, <CFGfilename>)\n\nwhere `<measfilename>` and `<CFGfilename>` are replaced by strings that contain\na relative or absolute path to the appropriate input `.txt` files. For more\nbasics on how to use a `Human` object, you can go into a python command prompt\nand type::\n\n   >>> help(yeadon.Human)\n\nor see the documentation.\n\nYou can also start the UI or the GUI from within a Python interpreter by\nexecuting::\n\n   >>> yeadon.start_ui()\n\nor::\n\n   >>> yeadon.start_gui()\n\nSee the documentation for more information.\n\nCite us!\n========\n\nIf you make use of the yeadon software we would welcome a citation in your\npublications. Please cite this software paper:\n\nDembia C, Moore JK and Hubbard M. An object oriented implementation of the\nYeadon human inertia model, F1000Research 2014, 3:223 (doi:\nhttps://dx.doi.org/10.12688/f1000research.5292.1)\n\nContact\n=======\n\nFeel free to contact Chris Dembia (chris530d, gmail) with any questions or\ncomments.\n\nAll development is handled at `<http://github.com/chrisdembia/yeadon>`_, including\nissue tracking.\n",
    "bugtrack_url": null,
    "license": "LICENSE.txt",
    "summary": "Estimates the inertial properties of a human.",
    "version": "1.5.0",
    "project_urls": {
        "Homepage": "https://github.com/chrisdembia/yeadon/"
    },
    "split_keywords": [
        "human",
        "inertia",
        "yeadon",
        "sports",
        "biomechanics",
        "gymnastics"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "25610f07901a8425b52e4924150e30992a3541287681e5af3e3055eb5322dab9",
                "md5": "ca4521204f9a5c280757b4c9627a09c3",
                "sha256": "3bd50c5eecd41410eebda88d45332385817f9284b30b2866ca5cd21503623867"
            },
            "downloads": -1,
            "filename": "yeadon-1.5.0.tar.gz",
            "has_sig": false,
            "md5_digest": "ca4521204f9a5c280757b4c9627a09c3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 479428,
            "upload_time": "2024-06-22T06:41:49",
            "upload_time_iso_8601": "2024-06-22T06:41:49.209101Z",
            "url": "https://files.pythonhosted.org/packages/25/61/0f07901a8425b52e4924150e30992a3541287681e5af3e3055eb5322dab9/yeadon-1.5.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-22 06:41:49",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "chrisdembia",
    "github_project": "yeadon",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "numpy",
            "specs": [
                [
                    ">=",
                    "1.21.5"
                ]
            ]
        },
        {
            "name": "numpydoc",
            "specs": [
                [
                    ">=",
                    "1.2"
                ]
            ]
        },
        {
            "name": "pyyaml",
            "specs": [
                [
                    ">=",
                    "5.4.1"
                ]
            ]
        }
    ],
    "lcname": "yeadon"
}
        
Elapsed time: 4.10418s