{"id":15722074,"url":"https://github.com/pyxrd/pyxrd","last_synced_at":"2025-05-05T21:34:50.405Z","repository":{"id":30839042,"uuid":"34396488","full_name":"PyXRD/PyXRD","owner":"PyXRD","description":"PyXRD is a python implementation of the matrix algorithm for computer modeling of X-ray diffraction (XRD) patterns of disordered lamellar structures.","archived":false,"fork":false,"pushed_at":"2020-03-07T08:08:15.000Z","size":10934,"stargazers_count":57,"open_issues_count":14,"forks_count":17,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-20T13:19:55.671Z","etag":null,"topics":["gtk3","numpy","python","xray-diffraction","xrd"],"latest_commit_sha":null,"homepage":"http://github.com/pyxrd/pyxrd/wiki","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PyXRD.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-04-22T14:51:19.000Z","updated_at":"2025-04-17T10:35:59.000Z","dependencies_parsed_at":"2022-08-23T09:10:57.134Z","dependency_job_id":null,"html_url":"https://github.com/PyXRD/PyXRD","commit_stats":null,"previous_names":["mathijs-dumon/pyxrd"],"tags_count":51,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyXRD%2FPyXRD","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyXRD%2FPyXRD/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyXRD%2FPyXRD/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PyXRD%2FPyXRD/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PyXRD","download_url":"https://codeload.github.com/PyXRD/PyXRD/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252580332,"owners_count":21771319,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gtk3","numpy","python","xray-diffraction","xrd"],"created_at":"2024-10-03T22:03:44.332Z","updated_at":"2025-05-05T21:34:50.347Z","avatar_url":"https://github.com/PyXRD.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"PyXRD\n=====\n\nPyXRD is a python implementation of the matrix algorithm for computer modeling\nof X-ray diffraction (XRD) patterns of disordered lamellar structures.\nIt's goals are to:\n\n - provide an easy user-interface for end-users\n - provide basic tools for displaying and manipulating XRD patterns\n - produce high-quality (publication-grade) figures\n - make modelling of XRD patterns for mixed-layer clay minerals 'easy'\n - be free and open-source (open box instead of closed box model)\n \nPyXRD was written with the multi-specimen full-profile fitting method in mind. \nA direct result is the ability to 'share' parameters among similar phases.\nThis allows for instance to have an air-dry and a glycolated illite-smectite \nshare their coherent scattering domain size, but still have different basal \nspacings and interlayer compositions for the smectite component. Or play with\nthe di/tri-octahedral composition of a chlorite with ease.\n\nOther features are (incomplete list):\n\n - Import/export several common XRD formats (.RD, .RAW, .CPI, ASCII)\n - Simple background subtraction/addition (linear or custom patterns)\n - Smoothing patterns and adding noise to patterns\n - Peak finding and annotating (markers)\n - Peak stripping and peak area calculation tools\n - Custom line colors, line widths, pattern positions, ...\n - Goniometer settings (wavelengths, geometry settings, ...)\n - Specimen settings (sample length, absorption, ...)\n - Automatic parameter refinement using several algorithms, e.g.:\n    - L BFGS B\n    - Brute Force\n    - Covariation Matrix Adapation Evolutionary Strategy (CMA-ES; using DEAP 1.0)\n    - Multiple Particle Swarm Optimization (MPSO; using DEAP 1.0)\n    - Particle-swarm CMA-ES (PS-CMA-ES; using DEAP 1.0)\n - Scripting support\n\nDISCLAIMER\n==========\nPyXRD is still very much work in progress. Currently there is no strict \ndevelopment cycle as it is still a one-man project. This also means little\ntime is going into testing and adding new tests for new features. Most of the\ncodebase therefore remains untested at this point and Things May Break as a \nresult.\n\nIf you encounter bugs please:\n\n * create a new [issue](https://github.com/PyXRD/PyXRD/issues/new) or;\n * send me an e-mail\n\n\nINSTALLATION\n============\n\nAs of version 0.5.0 PyXRD (finally) supports standard python packaging, meaning \nit is available from the [Python package index](https://pypi.python.org/pypi)\nand has become very easy to install for most Python users once the dependencies\nare installed.\n\nIf you're not used to (installing) Python software, see below for specific\ninstructions.\n\n\nDependencies\n------------\n\nThis is what should be present on your system.\n\n * Python 3.4 or later\n * Setuptools\n * GTK3 and pygobject 3.2 or later\n * cairocffi\n * Numpy 1.11 or later\n * Scipy 1.1 or later\n * Matplotlib 2.2 or later\n * Pyro4 4.41 or later\n * DEAP 1.0 or later\n \nAdditionally, to be able to run the unit tests, you'll need to install \npyton-mock (\u003e= 1.3.0). To just run PyXRD, you won't need it though.\n\nWindows\n-------\n\nPyXRD is developed on Ubuntu Linux, and thus has a number of dependencies which\nare not native to windows. Because of the difficulties in installing these\ncorrectly, from version 0.8 onwards an all-in-one stand alone installer is\nprovided for windows users. Previous installations should not interfere, but\nit's better to remove them (including python, numpy, scipy and \npygtk installed along with pre-v0.8 versions).\n\n\nYou can choose for a local installation or a portable (single-folder) \ninstallation. The latter is just a zip-file which can be extracted e.g. onto an\nusb-drive. The downside is you don't get start menu entries.\n\n\nThe installers are made available here:\n\nhttps://github.com/mathijs-dumon/PyXRD/releases\n\n\nAfter installation there should be a start menu entry available.\n\n\nIf PyXRD does not launch, run cmd.exe (the command prompt), enter the \nfollowing and send me the output (right-click to copy after selecting):\n\n```\"C:\\Program Files (x86)\\PyXRD\\bin\\python3.exe\" -m pyxrd```\n\n \nLinux\n-----\n\nIt should be as easy as:\n\n```\npython3 -m ensurepip --upgrade\npython3 -m pip install pyxrd\n```\n\nTo run PyXRD:\n\n```\npython3 -m pyxrd\n```\n\nMac OS X\n--------\n\nCurrently no support is given for iOS. If anyone is interested in getting this\nto work feel free to contact me.\n\nCREDITS\n=======\n\n- [xylib](http://github.com/wojdyr/xylib/) - Has been a great help at \nunravelling some common XRD formats \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpyxrd%2Fpyxrd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpyxrd%2Fpyxrd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpyxrd%2Fpyxrd/lists"}