问题

已知某应力张量的分量为

\[\sigma_{11}=3,\quad\sigma_{12} = \sigma_{13} = 1, \quad \sigma_{22} = \sigma_{33} = 0, \quad\sigma_{23} = 2
\]

  • 1、全部主应力
  • 2、最大主应力对应的主方向
  • 3、求方向矢量为 $\boldsymbol{n} = \left(0, \dfrac{1}{\sqrt{2}}, \dfrac{1}{\sqrt{2}}\right)$ 的斜面上的正应力 $\sigma_n$ 和剪应力 $\tau_n$。
  • 应力张量

    已知应力张量有如下形式

    \[\left[
    \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}
    3 & 1 & 1\\
    1 & 0 & 2\\
    1 & 2 & 0
    \end{array}
    \right]
    \]

    求解

    导入sympy模块

    from sympy import *
    init_printing(use_unicode=True)

    Matrix对象表示应力矩阵

    sigma = Matrix([[3, 1, 1], [1, 0, 2], [1, 2, 0]])
    sigma

    \[\left[\begin{matrix}3 & 1 & 1\\1 & 0 & 2\\1 & 2 & 0\end{matrix}\right]
    \]

    1、求全部主应力

    求特征值

    • 调用 Matrix 对象的 eigenvals 方法
    sigma.eigenvals()

    \[\left \{ -2 : 1, \quad 1 : 1, \quad 4 : 1\right \}
    \]

    • 冒号后的数字表示一重特征值

    求特征矢量

    • 调用 Matrix 对象的 eigenvects 方法
    sigma.eigenvects()

    \[\left [ \left ( -2, \quad 1, \quad \left [ \left[\begin{matrix}0\\-1\\1\end{matrix}\right]\right ]\right ), \quad \left ( 1, \quad 1, \quad \left [ \left[\begin{matrix}-1\\1\\1\end{matrix}\right]\right ]\right ), \quad \left ( 4, \quad 1, \quad \left [ \left[\begin{matrix}2\\1\\1\end{matrix}\right]\right ]\right )\right ]
    \]

    2、求最大主应力对应的主方向

    最大主应力

    \[\sigma_1 = 4
    \]

    最大主应力对应的主方向

    \[\dfrac{1}{\sqrt{6}}\left(2, 1, 1\right)
    \]

    3、求斜面上的正应力 \(\sigma_n\) 和剪应力 \(\tau_n\)

    方向矢量

    \[\boldsymbol{n} = \left(0, \dfrac{1}{\sqrt{2}}, \dfrac{1}{\sqrt{2}}\right)
    \]

    n = Matrix([[0], [1], [1]])/sqrt(2)
    n

    \[\left[\begin{matrix}0\\\frac{\sqrt{2}}{2}\\\frac{\sqrt{2}}{2}\end{matrix}\right]
    \]

    应力矢量 \(\boldsymbol{T} = \boldsymbol{\sigma}\cdot\boldsymbol{n}\)

    T = sigma*n
    T

    \[\left[\begin{matrix}\sqrt{2}\\\sqrt{2}\\\sqrt{2}\end{matrix}\right]
    \]

    正应力 \(\sigma_n = \boldsymbol{T}\cdot\boldsymbol{n}\)

    sigma_n = T.T*n
    sigma_n

    \[\left[\begin{matrix}2\end{matrix}\right]
    \]

    剪应力

    \[\tau_n = \sqrt{T^2 - \sigma_n^2}
    \]

    tau_n =sqrt(T.T*T - sigma_n**2)
    tau_n

    \[\left(\left[\begin{matrix}2\end{matrix}\right]\right)^{\frac{1}{2}}
    \]

    参考

    Python3之弹性力学——应力张量2的更多相关文章

    1. Python3之弹性力学——应力张量1

      题目 已知某点的应力张量为: \[ \left[ \begin{array}{ccc} \sigma_{x} &\tau_{xy} &\tau_{xz}\\ \tau_{yx} &am ...

    2. python3  threading初体验

      python3中thread模块已被废弃,不能在使用thread模块,为了兼容性,python3将thread命名为_thread.python3中我们可以使用threading进行代替. threa ...

    3. Python3中的字符串函数学习总结

      这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...

    4. Mac-OSX的Python3.5虚拟环境下安装Opencv

      Mac-OSX的Python3.5虚拟环境下安装Opencv 1   关键词 关键词:Mac,OSX,Python3.5,Virtualenv,Opencv 2   概述 本文是一篇 环境搭建 的基础 ...

    5. Ubuntu部署python3.5的开发和运行环境

      Ubuntu部署python3.5的开发和运行环境 1 概述 由于最近项目全部由python2.x转向 python3.x(使用目前最新的 python3.5.1) ,之前的云主机的的默认python ...

    6. Python3 登陆网页并保持cookie

      网页登陆 网页登陆的原理都是,保持一个sessionid在cookie然后,根据sessionid在服务端找到cookie进行用户识别 python实现 由于python的简单以及丰富的类库是开发网络 ...

    7. 阿里云 SDK python3支持

      最近的一个项目需要操作阿里云的RDS,项目使用python3,让人惊讶的是官方的SDK竟然只支持python2 在阿里云现有SDK上改了改,文件的修改只涉及aliyun/api/base.py,详见h ...

    8. python3爬取1024图片

      这两年python特别火,火到博客园现在也是隔三差五的出现一些python的文章.各种开源软件.各种爬虫算法纷纷开路,作为互联网行业的IT狗自然看的我也是心痒痒,于是趁着这个雾霾横行的周末瞅了两眼,作 ...

    9. CentOS7中安装Python3.5

      1.下载 https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz 2.上传到服务器 3. 安装相关依赖 yum install gcc ope ...

    随机推荐

    1. 四.idea本地调试hadoop程序

      目录: 目录见文章1 1.先上案例代码 WordCount.java: import java.io.IOException; import java.util.StringTokenizer; im ...

    2. A - Exposition CodeForces - 6E

      题目链接:https://vjudge.net/contest/202699#problem/A 题意 给一个n个元素的序列,从中挑出最长的子序列,要求子序列中元素差的最大值不超过k.问有几个最长子序 ...

    3. mysql基本操作(二)

      1.向表msg中插入数据,先创建表,再插入数据 mysql> create table msg ( -> id int, -> title varchar(60), -> na ...

    4. 一起学Hadoop——Hadoop的前世今生

      Hadoop是什么? Hadoop是一个处理海量数据的开源框架.2002年Nutch项目面世,这是一个爬取网页工具和搜索引擎系统,和其他众多的工具一样,都遇到了在处理海量数据时效率低下,无法存储爬取网 ...

    5. 【Android】Android处理Home键方法小结

      实验几次之后(android4.1 和android4.2)发现在单个的activity里面有以下几个方法可以使用: 方法1:onSaveInstanceState方法 下面这个方法可以处理home的 ...

    6. Flink--输入数据集Data Sources

      flink在批处理中常见的source flink在批处理中常见的source主要有两大类. 1.基于本地集合的source(Collection-based-source) 2.基于文件的sourc ...

    7. websocket/dwebsocket 实现前后端的实时通信

      1.  用bottle框架,自己写一个服务端实现: 转载   :http://www.linuxyw.com/813.html 功能:用websocket技术,在运维工具的浏览器上实时显示远程服务器上 ...

    8. AtCoder Regular Contest 100 (ARC100) E - Or Plus Max 其他

      原文链接https://www.cnblogs.com/zhouzhendong/p/9251448.html 题目传送门 - ARC100E 题意 给定一个正整数 $n(n\leq 18)$. 然后 ...

    9. Balanced Number 数位dp

      题意: 给出求ab之间有多少个平衡数   4139为平衡数   以3为轴   1*1+4*2==9*1 思路很好想但是一直wa  : 注意要减去前导零的情况 0 00 000 0000   不能反复计 ...

    10. linux的文件打包与压缩

      简介 Linux 上常用的压缩/解压工具,介绍了zip.rar.tar的使用. 文件打包和压缩 Linux 上的压缩包文件格式,除了 Windows 最常见的*.zip.*.rar..7z 后缀的压缩 ...