Python3之弹性力学——应力张量1
题目
已知某点的应力张量为:
\begin{array}{ccc}
\sigma_{x} &\tau_{xy} &\tau_{xz}\\
\tau_{yx} &\sigma_{y} &\tau_{yz}\\
\tau_{zx} &\tau_{zy} &\sigma_{z}
\end{array}
\right]
=
\left[
\begin{array}{ccc}
0 &1 &2\\
1 & \sigma_{y} & 1\\
2 &1 &0
\end{array}
\right]
\]
并已知经过该点的某一平面上的应力矢量为零矢量,求 \(\sigma_y\) 和主应力?
分析
由题意,存在某个微分面(单位法向量为 \(\boldsymbol{n}\)),其上的应力矢量 \(\boldsymbol{T}=\boldsymbol{0}\),即
\left[\begin{array}{ccc}
0 & 1 & 2\\
1 & \sigma_{y} & 1\\
2 & 1 & 0
\end{array}
\right]
\left[
\begin{array}{c}
n_1\\
n_2\\
n_3
\end{array}
\right]
=
\left[
\begin{array}{c}
0\\
0\\
0
\end{array}
\right]
\]
行列式必须为零
线性方程组存在非零解,必然行列式为零,即
0 & 1 & 2\\
1 & \sigma_{y} & 1\\
2 & 1 & 0
\end{array}
\right|
= 0 + 2 + 2 -4\sigma_y - 0 - 0
= 0
\]
求得 \(\sigma_y = 1\)。
应力张量
于是,应力张量为
\begin{array}{ccc}
\sigma_{x} & \tau_{xy} & \tau_{xz}\\
\tau_{yx} & \sigma_{y} & \tau_{yz}\\
\tau_{zx} & \tau_{zy} & \sigma_{z}
\end{array}
\right]
=
\left[
\begin{array}{ccc}
0 & 1 & 2\\
1 & 1 & 1\\
2 & 1 & 0
\end{array}
\right]
\]
特征值问题
求主应力,即为求应力张量的特征值。
\]
或
\begin{array}{ccc}
-\sigma & 1 & 2\\
1 & 1-\sigma & 1\\
2 & 1 & -\sigma
\end{array}
\right|
=
(1-\sigma)\sigma^2 + 2 + 2 - 4(1-\sigma) + \sigma + \sigma = 0
\]
整理得
\]
主应力
得到三个主应力分别为
\begin{array}{rcr}
\sigma_1 & = & 3\\
\sigma_2 & = & 0\\
\sigma_3 & = & -2
\end{array}
\right.
\]
Python3代码求解
符号运算求特征值
- 调用 Python 下的 sympy 模块
from sympy import init_printing, Matrix
init_printing(use_unicode=True)
Matrix对象表示应力矩阵
# 生成矩阵对象
sigma = Matrix([[0, 1, 2], [1, 1, 1], [2, 1, 0]])
sigma
\]
求特征值
- 前已求得三个主应力分别为
\begin{array}{rcr}
\sigma_1 & = & 3\\
\sigma_2 & = & 0\\
\sigma_3 & = & -2
\end{array}
\right.
\]
- 调用 Matrix 对象的 eigenvals 方法
sigma.eigenvals() # 求特征值
\]
- 冒号后的数字表示一重特征值
求特征矢量
- 调用 Matrix 对象的 eigenvects 方法
sigma.eigenvects()
\]
参考
Python3之弹性力学——应力张量1的更多相关文章
- Python3之弹性力学——应力张量2
问题 已知某应力张量的分量为 \[ \sigma_{11}=3,\quad\sigma_{12} = \sigma_{13} = 1, \quad \sigma_{22} = \sigma_{33} ...
- python3 threading初体验
python3中thread模块已被废弃,不能在使用thread模块,为了兼容性,python3将thread命名为_thread.python3中我们可以使用threading进行代替. threa ...
- Python3中的字符串函数学习总结
这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...
- Mac-OSX的Python3.5虚拟环境下安装Opencv
Mac-OSX的Python3.5虚拟环境下安装Opencv 1 关键词 关键词:Mac,OSX,Python3.5,Virtualenv,Opencv 2 概述 本文是一篇 环境搭建 的基础 ...
- Ubuntu部署python3.5的开发和运行环境
Ubuntu部署python3.5的开发和运行环境 1 概述 由于最近项目全部由python2.x转向 python3.x(使用目前最新的 python3.5.1) ,之前的云主机的的默认python ...
- Python3 登陆网页并保持cookie
网页登陆 网页登陆的原理都是,保持一个sessionid在cookie然后,根据sessionid在服务端找到cookie进行用户识别 python实现 由于python的简单以及丰富的类库是开发网络 ...
- 阿里云 SDK python3支持
最近的一个项目需要操作阿里云的RDS,项目使用python3,让人惊讶的是官方的SDK竟然只支持python2 在阿里云现有SDK上改了改,文件的修改只涉及aliyun/api/base.py,详见h ...
- python3爬取1024图片
这两年python特别火,火到博客园现在也是隔三差五的出现一些python的文章.各种开源软件.各种爬虫算法纷纷开路,作为互联网行业的IT狗自然看的我也是心痒痒,于是趁着这个雾霾横行的周末瞅了两眼,作 ...
- CentOS7中安装Python3.5
1.下载 https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz 2.上传到服务器 3. 安装相关依赖 yum install gcc ope ...
随机推荐
- Nginx详解二十七:Nginx架构篇之安全篇
1.常见的恶意行为:爬虫行为和恶意抓取.资源盗用 解决方案: 基础防盗链功能:不让恶意用户能轻易爬去网站对外数据 secure_link_module模块:对数据安全性提高,加密验证和失效性,适合核心 ...
- Java 输入一组数字,用穷举的方法列出
import java.util.Scanner; public class TestScanner { public static void main(String[] args) { Scanne ...
- 步步为营-81-HttpModule(再谈Session)
说明:session用于记录数据信息并存放在服务器内存中,但是存在一些问题.例如当使用服务器集群是会出现session丢失等情况.虽然微软提供了一些解决方案(Session进程外存储,或者存到数据库中 ...
- js中匿名函数和回调函数
匿名函数: 通过这种方式定义的函数:(没有名字的函数) 作用:当它不被赋值给变量单独使用的时候 1.将匿名函数作为参数传递给其他函数 2.定义某个匿名函数来执行某些一次性任务 var f = func ...
- epoll(二)
epoll概念 epoll对文件描述符的操作方式有两种工作模式:LT模式(Level Trigger,水平触发) 和ET模式(Edge Trigger,边缘触发). LT模式:当epoll_wait检 ...
- NetCore 生成RSA公私钥对,公钥加密私钥解密,私钥加密公钥解密
using Newtonsoft.Json; using Org.BouncyCastle.Crypto; using Org.BouncyCastle.Crypto.Encodings; using ...
- C++ 复制构造函数 与 赋值运算符
在C++中,将一个对象赋给另外一个对象,编译器将提供赋值运算符的定义. 有两种情况,下面假设catman是Monster的一个实例 第一种:初始化 Monster golblen= catman; 第 ...
- CallContext
1.线程本地存储区的专用集合对象,并提供对每个逻辑执行线程都唯一的数据槽.2.数据槽不在其他逻辑线程上的调用上下文之间共享. class Program { static Jason_TestEnti ...
- POJ 2987 Firing【最大权闭合图-最小割】
题意:给出一个有向图,选择一个点,则要选择它的可以到达的所有节点.选择每个点有各自的利益或损失.求最大化的利益,以及此时选择人数的最小值. 算法:构造源点s汇点t,从s到每个正数点建边,容量为利益.每 ...
- php处理IOS图片旋转
$picAddr = $url; $exif = exif_read_data($picAddr); $image = imagecreatefromjpeg($picAddr); if($exif[ ...