{ "info": { "author": "T. Ben Thompson", "author_email": "t.ben.thompson@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "cutde\n=====\n\nPython + CUDA TDEs from Nikkhoo and Walters 2015\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nHowdy! Usage is really simple:\n\n::\n\n import cutde.fullspace\n\n disp = cutde.fullspace.clu_disp(pts, tris, slips, 0.25)\n strain = cutde.fullspace.clu_strain(pts, tris, slips, nu)\n\n- ``pts`` is a ``np.array`` with shape ``(N, 3)``\n- tris is a ``np.array`` with shape ``(N, 3, 3)``,\n- slips is a ``np.array`` with shape ``(N, 3)``\n- the last parameter, nu, is the Poisson ratio.\n\nIMPORTANT: N should be the same for all these arrays. There is exactly\none triangle and slip value used for each observation point.\n\n``slip[:,0]`` is the strike slip component, while component 1 is the dip\nslip and component 2 is the tensile/opening component.\n\n- The output ``disp`` is a ``(N, 3)`` array with displacement\n components in the x, y, z directions.\n- The output ``strain`` is a ``(N, 6)`` array representing a symmetric\n tensor. ``strain[:,0]`` is the xx component of strain, 1 is yy, 2 is\n zz, 3 is xy, 4 is xz, and 5 is yz.\n\nI want stress.\n~~~~~~~~~~~~~~\n\nUse:\n\n::\n\n stress = cutde.fullspace.strain_to_stress(strain, sm, nu)\n\nto convert from stress to strain assuming isotropic linear elasticity.\n``sm`` is the shear modulus and ``nu`` is the Poisson ratio.\n\nAll pairs\n~~~~~~~~~\n\nIf, instead, you want to create a matrix representing the interaction\nbetween every observation point and every source triangle, there is a\ndifferent interface:\n\n::\n\n import cutde.fullspace\n\n disp = cutde.fullspace.clu_disp_all_pairs(pts, tris, slips, 0.25)\n strain = cutde.fullspace.clu_strain_all_pairs(pts, tris, slips, nu)\n\n- ``pts`` is a ``np.array`` with shape ``(N_OBS_PTS, 3)``\n- tris is a ``np.array`` with shape ``(N_SRC_TRIS, 3, 3)``,\n- slips is a ``np.array`` with shape ``(N_SRC_TRIS, 3)``\n- the last parameter, nu, is the Poisson ratio.\n- The output ``disp`` is a ``(N_OBS_PTS, N_SRC_TRIS, 3)`` array.\n- The output ``strain`` is a ``(N_OBS_PTS, N_SRC_TRIS, 6)`` array.\n\nNote that to use the ``strain_to_stress`` function, you'll need to\nreshape the output strain to be ``(N_OBS_PTS * N_SRC_TRIS, 6)``.\n\nInstallation\n~~~~~~~~~~~~\n\nJust run\n\n::\n\n pip install cutde\n\nThat'll also install the ```cluda``\ndependency `__. You might also\nneed to install PyCUDA or PyOpenCL if you don't already have one or the\nother installed. If you're on a machine that has a GPU that supports\nCUDA, just try:\n\n::\n\n pip install pycuda\n\nIf not, you'll need to install PyOpenCL. Installing OpenCL is sometimes\na breeze and sometimes a huge pain, but it should be installable on most\nrecent hardware and typical operating systems. `These directions can be\nhelpful. `__.\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/tbenthompson/cutde", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "cutde", "package_url": "https://pypi.org/project/cutde/", "platform": "any", "project_url": "https://pypi.org/project/cutde/", "project_urls": { "Homepage": "https://github.com/tbenthompson/cutde" }, "release_url": "https://pypi.org/project/cutde/18.5.29/", "requires_dist": null, "requires_python": "", "summary": "", "version": "18.5.29" }, "last_serial": 3910305, "releases": { "18.5.10.1": [ { "comment_text": "", "digests": { "md5": "c89d4df40897db67060adce2e746cfbe", "sha256": "e3894bd06adaeb597c103205f14143aab80c0da4a8061ea213e9a0704c9dc46c" }, "downloads": -1, "filename": "cutde-18.5.10.1.tar.gz", "has_sig": false, "md5_digest": "c89d4df40897db67060adce2e746cfbe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8422, "upload_time": "2018-05-10T21:55:19", "url": "https://files.pythonhosted.org/packages/00/b8/ec4974aa68fd057d2451e2b2647ed17257965485ae004d5808066517b54b/cutde-18.5.10.1.tar.gz" } ], "18.5.10.2": [ { "comment_text": "", "digests": { "md5": "6d912b14c602028b866aea8e06a485b5", "sha256": "2f0b0de8a811f895f498a4f77ee62e31eb0021a40566d76ec8ccd40ffed7b865" }, "downloads": -1, "filename": "cutde-18.5.10.2.tar.gz", "has_sig": false, "md5_digest": "6d912b14c602028b866aea8e06a485b5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8455, "upload_time": "2018-05-10T22:21:50", "url": "https://files.pythonhosted.org/packages/fc/81/e0c76fd5af188b67ae8be51494916e31a191cfca2a70eb5ae924dec79804/cutde-18.5.10.2.tar.gz" } ], "18.5.15": [ { "comment_text": "", "digests": { "md5": "03d642e5ca4cf29308b1198752847de5", "sha256": "f982a0ea45f2d0154c8a8db5259c24efb2e1269dcdf6d42a0315ad9c8c17480c" }, "downloads": -1, "filename": "cutde-18.5.15.tar.gz", "has_sig": false, "md5_digest": "03d642e5ca4cf29308b1198752847de5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9399, "upload_time": "2018-05-16T01:27:09", "url": "https://files.pythonhosted.org/packages/fb/94/118a630c225e527d54466e49f8ec055b8a4c2ce422676ec3f46b0b5bc0bd/cutde-18.5.15.tar.gz" } ], "18.5.17.2": [ { "comment_text": "", "digests": { "md5": "634b9898fef0c8d4765da4dcbf2b1a64", "sha256": "1f08b29325b956eead019aa5653bd124ead60403a38980489781a1b3f50ce091" }, "downloads": -1, "filename": "cutde-18.5.17.2.tar.gz", "has_sig": false, "md5_digest": "634b9898fef0c8d4765da4dcbf2b1a64", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9826, "upload_time": "2018-05-18T01:14:43", "url": "https://files.pythonhosted.org/packages/40/9c/5f7795c1aecffe9ca85b8d92adf8de780985912d328b8d55129a5c2d8dc4/cutde-18.5.17.2.tar.gz" } ], "18.5.29": [ { "comment_text": "", "digests": { "md5": "94fbce2fcccaaa79ff1400cf080f6418", "sha256": "5e435a5bff019cda9efcdb7de3ab762c2da1763e5656aa6c8b96c10bb8f8898e" }, "downloads": -1, "filename": "cutde-18.5.29.tar.gz", "has_sig": false, "md5_digest": "94fbce2fcccaaa79ff1400cf080f6418", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10282, "upload_time": "2018-05-29T19:54:50", "url": "https://files.pythonhosted.org/packages/72/b2/5ad4010589658243581d7cfa0f84b02f2c482b0551b87d722e370c8594c5/cutde-18.5.29.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "94fbce2fcccaaa79ff1400cf080f6418", "sha256": "5e435a5bff019cda9efcdb7de3ab762c2da1763e5656aa6c8b96c10bb8f8898e" }, "downloads": -1, "filename": "cutde-18.5.29.tar.gz", "has_sig": false, "md5_digest": "94fbce2fcccaaa79ff1400cf080f6418", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10282, "upload_time": "2018-05-29T19:54:50", "url": "https://files.pythonhosted.org/packages/72/b2/5ad4010589658243581d7cfa0f84b02f2c482b0551b87d722e370c8594c5/cutde-18.5.29.tar.gz" } ] }