{ "info": { "author": "Zan Peeters", "author_email": "me@example.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Development Status :: 5 - Production/Stable", "Intended Audience :: Science/Research", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering" ], "description": "# sims\n\nPython module to read Cameca (nano)SIMS data files.\n\n## Highlights\n\n- Read in data from Cameca SIMS or nanoSIMS files, making the data directly accessible in the Python science stack (numpy/pandas/xarray/matplotlib).\n\n- Read in the **complete** header of the file. Get access to every setting of the machine recorded at the time of the experiment. No other software can do this, to my knowledge.\n\n- Read in *almost* **every** file the Cameca software can produce. Besides the usual data files (.im image files and .is 'isotope' or spot files), the software produces a host of other files. To name a few:\n\n * High Mass Resolution scans (.hmr)\n * Secondary Ion Beam Centering scans (.sib)\n * Pulse Height Distribution scans (.phd)\n * E0S Centering scans (.e0s)\n * Energy scans (.nrj)\n * Beam Stability traces (.bs)\n * and many more!\n\n Most of these can be read by the sims module. Support for more files is added whenever possible. No other software can do this, to my knowledge.\n\n- Reading data directly from **compressed** files. Especially the .im image files tend to take up a lot of space, even if the majority of the data is zeros. They can compress down to as much as 90 % of their original size. sims supports reading directly from files compressed with gzip, bzip2, xz, lzma, 7zip, and zip. You can also combine multiple files in a multifile archive with tar, zip, or 7zip and read some or all files directly from that.\n\n- It's open source and free, allowing you to see exactly how calculations and data transformations were done. This is in stark contrast with other, closed-source programs, where you have to just trust that the writers of those programs implemented everything correctly. You can not see how they did it exactly, because they won't let you see inside the code. This program is completely open! Look how things are done and if you don't like it, improve!\n\n## What's new\n\n### v2.0.0\n\nSince version 0.25 pandas no longer supports 4DPanel and Panel. sims has switched to using xarray, the recommended \ndata structure for multi-dimensional data. Xarray is in a large part based on pandas and the syntax for accessing data is almost identical. See [xarray](https://xarray.pydata.org/en/stable/) for more information.\n\nVersion 2.0 of sims also dropped support for Python 2.x. Python 3.4 or newer is now required.\n\n### v1.0.0\n\nThis version supports Python 2.7 and uses pandas as the data structure. Use this version if you need support for either.\n\n## Installation\n\nRequirements to install this Python module:\n\n- Python 3.4 or newer\n- xarray\n- scipy\n- scikit-image\n- matplotlib\n\nTo install, simply run from the command line:\n\n```shell\n$ pip install sims\n```\n\n## Getting started\n\nOnce you have sims installed, you can start working with nanoSIMS files.\n\n```python\n[1]: import matplotlib.pyplot as plt\n[2]: import sims\n\n[3]: s = sims.SIMS('data_file.im')\n\n[4]: s.data\n\narray([[[[411, ..., 159],\n ...,\n [325, ..., 398]],\n\n ...,\n [[ 30, ..., 1],\n ...,\n [ 0, ..., 0]]]], dtype=uint16)\nCoordinates:\n * species (species) \narray([[411, 86, 113, ..., 188, 138, 159],\n [114, 73, 79, ..., 82, 96, 96],\n [ 91, 70, 117, ..., 58, 53, 55],\n ...,\n [341, 32, 16, ..., 251, 313, 317],\n [316, 31, 37, ..., 221, 314, 368],\n [325, 21, 26, ..., 210, 325, 398]], dtype=uint16)\nCoordinates:\n species \n\n```python\n# Show the header\n[13]: s.header\n... # too big to show here\n\n# Show a small portion of the header\n[14]: s.header['BFields'][0]\n{'b field enabled': True,\n 'b field bits': 856507,\n 'wait time': 0.0,\n 'time per pixel': 0.0075,\n 'time per step': 20.0,\n 'wait time computed': False,\n 'E0W offset': -13,\n 'Q': 389,\n 'LF4': 1601,\n 'hex val': 575,\n 'frames per bfield': 1,\n 'Trolleys': [{\n 'label': '12C',\n 'mass': 12.004397767933469,\n 'radius': 442.47767499881127,\n 'deflection plate 1': -68,\n 'deflection plate 2': 67,\n 'detector': 'EM',\n 'exit slit': 268850,\n 'real trolley': True,\n 'cameca trolley index': 0,\n 'peakcenter index': 1,\n 'peakcenter follow': 1,\n 'focus': 0.0,\n 'hmr start': -16.996336996336996,\n 'start dac plate 1': -68,\n 'start dac plate 2': 67,\n 'hmr step': 4,\n 'hmr points': 50,\n 'hmr count time': 0.54,\n 'used for baseline': False,\n '50% width': 95.616,\n 'peakcenter side': 'both',\n 'peakcenter count time': 0.54,\n 'used for sib center': False,\n 'unit correction': 0,\n 'deflection': -9.963369963369964,\n 'used for energy center': False,\n 'used for E0S center': False,\n 'trolley enabled': True,\n 'used for phd scan': False,\n 'phd start': 3995,\n 'phd step size': -30,\n 'phd points': 30,\n 'phd count time': 0.54,\n 'phd scan repeat': 3,\n 'trolley label': 'Trolley 1',\n 'detector label': 'Detector 1'},\n ... # Skipped all the other trolleys\n ],\n 'counting frame time': 491.52,\n 'scanning frame time': 491.52,\n 'working frame time': 491.52}\n\n# Export header to JSON (text) format\n[19]: sims.utils.export_header(s, filename='header.txt')\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/zanpeeters/sims", "keywords": "sims nanosims mass-spectrometry Cameca file-format", "license": "BSD 3-Clause Clear", "maintainer": "", "maintainer_email": "", "name": "sims", "package_url": "https://pypi.org/project/sims/", "platform": "", "project_url": "https://pypi.org/project/sims/", "project_urls": { "Homepage": "https://github.com/zanpeeters/sims" }, "release_url": "https://pypi.org/project/sims/2.0.0/", "requires_dist": [ "matplotlib", "scikit-image", "scipy", "xarray" ], "requires_python": ">=3.4", "summary": "Python module to read Cameca (nano)SIMS data files.", "version": "2.0.0" }, "last_serial": 5788253, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "29efe1a180689c21284b37008b003c0c", "sha256": "61166a66e707d83fbae142897ac1ee4d170f3680ad308c1373403c6cc38b40ae" }, "downloads": -1, "filename": "sims-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "29efe1a180689c21284b37008b003c0c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 46547, "upload_time": "2019-09-05T20:24:54", "url": "https://files.pythonhosted.org/packages/e2/07/5d26eaedb3f93ce4d188a5e3c458a2802df5818044cda073ad33006133d4/sims-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "290e86603e074cd614495bc313df26b6", "sha256": "2a41421c6241203be87ba5b77567914e383d71bf8f05e10413156c7b2d7bf7e3" }, "downloads": -1, "filename": "sims-1.0.0.tar.gz", "has_sig": false, "md5_digest": "290e86603e074cd614495bc313df26b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40848, "upload_time": "2019-09-05T20:24:57", "url": "https://files.pythonhosted.org/packages/d8/19/98c96149f5267e315b8db5a4dc1043b02d6e41758bf147c43b069498ea86/sims-1.0.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "583291cff18296a5fc231d565e26bd5e", "sha256": "a5b19d918bcba81d26f7fd4f9fe4bb9f7c13ff62efdb8b7dee6ae19e51138a8b" }, "downloads": -1, "filename": "sims-2.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "583291cff18296a5fc231d565e26bd5e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 49126, "upload_time": "2019-09-05T20:24:18", "url": "https://files.pythonhosted.org/packages/2c/60/42e52edd53121d2444e239867467dcc366d84ff2638a7e6aaa0276cd5d88/sims-2.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3ce0277bdcca9f55cd3da45ce57f8d06", "sha256": "ce4a644222560a13a859772729af238625dfa760b450db05f2f88598f1a5ee00" }, "downloads": -1, "filename": "sims-2.0.0.tar.gz", "has_sig": false, "md5_digest": "3ce0277bdcca9f55cd3da45ce57f8d06", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 210866, "upload_time": "2019-09-05T20:24:21", "url": "https://files.pythonhosted.org/packages/65/79/b8f5b1310f79624228e722ff5dd6d7d4699b5869fe6ebb8d3f5b3a9c56cb/sims-2.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "583291cff18296a5fc231d565e26bd5e", "sha256": "a5b19d918bcba81d26f7fd4f9fe4bb9f7c13ff62efdb8b7dee6ae19e51138a8b" }, "downloads": -1, "filename": "sims-2.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "583291cff18296a5fc231d565e26bd5e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 49126, "upload_time": "2019-09-05T20:24:18", "url": "https://files.pythonhosted.org/packages/2c/60/42e52edd53121d2444e239867467dcc366d84ff2638a7e6aaa0276cd5d88/sims-2.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3ce0277bdcca9f55cd3da45ce57f8d06", "sha256": "ce4a644222560a13a859772729af238625dfa760b450db05f2f88598f1a5ee00" }, "downloads": -1, "filename": "sims-2.0.0.tar.gz", "has_sig": false, "md5_digest": "3ce0277bdcca9f55cd3da45ce57f8d06", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 210866, "upload_time": "2019-09-05T20:24:21", "url": "https://files.pythonhosted.org/packages/65/79/b8f5b1310f79624228e722ff5dd6d7d4699b5869fe6ebb8d3f5b3a9c56cb/sims-2.0.0.tar.gz" } ] }