没有项目描述

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什么类似于安卓中iOS的VOIP推送和呼叫工具包,用于呼叫   java广播接收器第二次不工作   从maven本地导入java   java如何在jdbc中执行oracle过程   java单击按钮时如何更改JButton上的图像?   java Univocity如何将3(n)行解析为一行(bean)   java消除了字符串中出现的所有特定模式   javascript为什么Js不能从我的web服务目录加载图像文件?   pdf如何在没有AdobeAcrobat的情况下在Java中自动创建字段   反思如何以编程方式创建java文件   AmazonWeb服务java。木卫一。IOException:尝试读取aws s3存储桶上的关闭流   java如何在kotlin中映射基于升序的数组列表和排序   java执行一个方法的时间片段出现   不使用'synchronized'关键字的java线程安全代码?   使用Java小程序在浏览器中滚动至顶部   避免“ZLIB输入流意外结束”的java计时要求