Universal Software Lock-In Amplifier (ULIA)
===========================================
.. image:: https://gitlab.com/UhlDaniel/ulia/-/jobs/artifacts/master/raw/license.svg?job=badges
:target: https://gitlab.com/UhlDaniel/ulia/-/blob/master/LICENSE
.. image:: https://gitlab.com/UhlDaniel/ulia/-/jobs/artifacts/master/raw/pypi.svg?job=pypi
:target: https://pypi.org/project/ulia/
.. image:: https://img.shields.io/badge/DOI-10.1063%2F5.0059740-blue
:target: https://aip.scitation.org/doi/10.1063/5.0059740
An effective algorithm to emulate a Lock-In Amplifier.
Quickstart
==========
Installation
------------
To install `ulia` you can use `pip`.
`ulia` package can be installed directly from PyPI using `pip` (`pip3`).
.. code-block:: console
$ pip install git+https://gitlab.com/UhlDaniel/ulia.git
or
.. code-block:: console
$ pip install ulia
Dependencies
------------
This package depends on:
- Numpy
- Scipy
- Numba
Usage
-----
A simple example on how to utilize the ULIA.
.. code-block:: python
>>> import numpy as np
>>> import ulia
>>> modulation_frequency = 5000.0
>>> sampling_rate = 200000.0
>>> t = np.arange(0, 0.3*sampling_rate) / sampling_rate
>>> signal = np.cos(2*np.pi*t*modulation_frequency)
>>> reference = np.cos(2*np.pi*t*modulation_frequency)
>>> lia = ulia.ULIA(signal.size, sampling_rate, 0.03, 2, 0.2)
>>> lia.load_data(reference, signal)
>>> lia.execute()
Ignore the first 30% and last 10% of data due to filter artefacts.
>>> x = np.mean(lia.x[int(0.3*lia.x.size):int(0.9*lia.x.size)])
>>> y = np.mean(lia.y[int(0.3*lia.y.size):int(0.9*lia.y.size)])
>>> print(x + 1j * y)
Links
=====
* `ULIA on PyPi <https://pypi.org/project/ulia/>`_
* `Publication <https://doi.org/10.1063/5.0059740>`_
Raw data
{
"_id": null,
"home_page": "https://gitlab.com/UhlDaniel/ulia",
"name": "ulia",
"maintainer": "Daniel Uhl",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "daniel_uhl@hotmail.de",
"keywords": "lia lock-in amplifier",
"author": "Daniel Uhl",
"author_email": "daniel_uhl@hotmail.de",
"download_url": "",
"platform": null,
"description": "Universal Software Lock-In Amplifier (ULIA)\n===========================================\n\n.. image:: https://gitlab.com/UhlDaniel/ulia/-/jobs/artifacts/master/raw/license.svg?job=badges\n :target: https://gitlab.com/UhlDaniel/ulia/-/blob/master/LICENSE\n\n.. image:: https://gitlab.com/UhlDaniel/ulia/-/jobs/artifacts/master/raw/pypi.svg?job=pypi\n :target: https://pypi.org/project/ulia/\n\n.. image:: https://img.shields.io/badge/DOI-10.1063%2F5.0059740-blue\n :target: https://aip.scitation.org/doi/10.1063/5.0059740\n\n\nAn effective algorithm to emulate a Lock-In Amplifier.\n\n\nQuickstart\n==========\n\nInstallation\n------------\n\nTo install `ulia` you can use `pip`.\n\n\n`ulia` package can be installed directly from PyPI using `pip` (`pip3`).\n\n.. code-block:: console\n\n $ pip install git+https://gitlab.com/UhlDaniel/ulia.git\n\nor\n\n.. code-block:: console\n\n $ pip install ulia\n\n\nDependencies\n------------\n\nThis package depends on:\n\n - Numpy\n - Scipy\n - Numba\n\n\n\nUsage\n-----\n\nA simple example on how to utilize the ULIA.\n\n.. code-block:: python\n\n >>> import numpy as np\n >>> import ulia\n\n\n >>> modulation_frequency = 5000.0\n >>> sampling_rate = 200000.0\n\n >>> t = np.arange(0, 0.3*sampling_rate) / sampling_rate\n >>> signal = np.cos(2*np.pi*t*modulation_frequency)\n >>> reference = np.cos(2*np.pi*t*modulation_frequency)\n\n >>> lia = ulia.ULIA(signal.size, sampling_rate, 0.03, 2, 0.2)\n >>> lia.load_data(reference, signal)\n >>> lia.execute()\n\n\n Ignore the first 30% and last 10% of data due to filter artefacts.\n >>> x = np.mean(lia.x[int(0.3*lia.x.size):int(0.9*lia.x.size)])\n >>> y = np.mean(lia.y[int(0.3*lia.y.size):int(0.9*lia.y.size)])\n\n >>> print(x + 1j * y)\n\n\n\nLinks\n=====\n\n * `ULIA on PyPi <https://pypi.org/project/ulia/>`_\n * `Publication <https://doi.org/10.1063/5.0059740>`_\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Algorithm to emulate a lock-in amplifier",
"version": "2023.2.1",
"split_keywords": [
"lia",
"lock-in",
"amplifier"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "294d3069e494e94d105cf8a454c8c78b106710e643b6c26f58df905c3821443f",
"md5": "23b5aa1e4023f8e9881bb382687131cf",
"sha256": "4767bfe6f7ce5dfff96334b15532c391d55954db978a4b34f4f879ab29c2b905"
},
"downloads": -1,
"filename": "ulia-2023.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "23b5aa1e4023f8e9881bb382687131cf",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 7033,
"upload_time": "2023-03-12T18:26:46",
"upload_time_iso_8601": "2023-03-12T18:26:46.881834Z",
"url": "https://files.pythonhosted.org/packages/29/4d/3069e494e94d105cf8a454c8c78b106710e643b6c26f58df905c3821443f/ulia-2023.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-03-12 18:26:46",
"github": false,
"gitlab": true,
"bitbucket": false,
"gitlab_user": "UhlDaniel",
"gitlab_project": "ulia",
"lcname": "ulia"
}