没有项目描述

cutde的Python项目详细描述


来自Nikkhoo和Walters 2015的Python+Cuda TDES

你好!用法非常简单:

import cutde.fullspace

disp = cutde.fullspace.clu_disp(pts, tris, slips, 0.25)
strain = cutde.fullspace.clu_strain(pts, tris, slips, nu)
  • pts是形状为(N, 3)
  • np.array
  • tris是一个np.array形状的(N, 3, 3)
  • 卡瓦是形状为(N, 3)
  • np.array
  • 最后一个参数nu是泊松比。

重要提示:对于所有这些数组,n应该相同。确实有 每个观测点使用一个三角形和滑移值。

slip[:,0]是走滑分量,而分量1是下倾分量 卡瓦和组件2是拉伸/开口组件。

  • 输出disp是具有位移的(N, 3)数组 X、Y、Z方向的组件。
  • 输出strain是表示对称的(N, 6)数组 张量。strain[:,0]是应变的xx分量,1是yy,2是 3是xy,4是xz,5是yz。

我想要压力。

使用:

stress = cutde.fullspace.strain_to_stress(strain, sm, nu)

假设各向同性线弹性从应力转换为应变。 sm是剪切模量,nu是泊松比。

所有对

相反,如果您想要创建一个表示交互的矩阵 在每个观测点和每个源三角之间,有一个 不同的界面:

import cutde.fullspace

disp = cutde.fullspace.clu_disp_all_pairs(pts, tris, slips, 0.25)
strain = cutde.fullspace.clu_strain_all_pairs(pts, tris, slips, nu)
  • pts是形状为(N_OBS_PTS, 3)
  • np.array
  • tris是一个np.array形状的(N_SRC_TRIS, 3, 3)
  • 卡瓦是形状为(N_SRC_TRIS, 3)
  • np.array
  • 最后一个参数nu是泊松比。
  • 输出disp是一个(N_OBS_PTS, N_SRC_TRIS, 3)数组。
  • 输出strain是一个(N_OBS_PTS, N_SRC_TRIS, 6)数组。

注意,要使用strain_to_stress函数,需要 将输出应变重塑为(N_OBS_PTS * N_SRC_TRIS, 6)

安装

只需运行

pip install cutde

它还将安装`cluda 依赖关系https://github.com/tbenthompson/cluda>;`。你也可以 如果您还没有pycuda或pyopencl,则需要安装pycuda或pyopencl 其他已安装。如果你在一台支持GPU的机器上 库达,试试:

pip install pycuda

否则,您需要安装pyopencl。安装opencl有时 一阵风,有时是巨大的痛苦,但它应该可以安装在大多数 最新的硬件和典型的操作系统。These directions can be helpful.

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Clojure关键字在内存中的大小是多少?   Java中有固定长度的通用数组对象吗?   PostgreSQL:通过Java更新我的用户表   错误:使用java解析xml   java Json显示列表中对象的名称   java比较JodaTime时区   与JAVA中的API和包的区别?   java的int值在for循环中不改变   谷歌应用引擎中的java RSA   迁移到spring 5后出现java非法字符错误   java Websphere管理控制台不工作   JavaGSON如何始终在json中包含毫秒?   带有空格和双引号的windows Java ProcessBuilder命令参数失败   java错误:重复的zip条目[43.jar:org/apache/http/annotation/NotThreadSafe.class]