关于梁挠曲线方程解析解与有限元解的简单对比

对于受均布荷载的简支梁,假设梁的长度L=1,均布荷载大小为1,弹模E为1,惯性矩I为1,那么梁的挠曲线方程的解析解为

$$
v(x)=-\left(\frac{x^4}{24}-\frac{x^3}{12}+\frac{x}{24}\right)
$$

梁单元的形函数如下

根据形函数的定义,只要知道了单元两端节点的位移,即可用形函数求出单元上任意位置的挠度。即

$$
v(x)=N(x)\cdot q^{e}
$$

其中$q^{e}$为节点的位移列阵。

下面对比一下,由形函数得到的挠度曲线与挠曲线的解析解之间的差别,为了对比方便,这里采用形函数时,节点的位移均由挠曲线解析解求出,换言之,在节点处的位移是精确的。

1.假设将上图结构中梁看作一个单元

$$
\begin{split}
v(0)=0\quad & v‘(0)=-\dfrac{1}{24}\\
v(1)=0\quad & v‘(1)=\dfrac{1}{24}
\end{split}
$$

把形函数行矩阵与上面的节点位移列阵相乘,可以得到挠曲线方程

$$
v1(x)=\frac{x^2}{24}-\frac{x}{24}
$$

2.假设将上图中梁看着2个单元

每个单元的长度L=1/2
利用MM求得挠曲线方程的分段函数为

分别把解析解,1个单元,2个单元求得的挠曲线方程画出来

可以看到,采用2个单元时,挠曲线方程与解析解十分接近,几乎重合;而采用1个单元时,较解析解差别较大。考察在1/4处的数值

  1/4出挠度值
解析解 -0.00927734
1个单元 -0.0078125
2个单元 -0.00911458

差别很明显。

时间: 2024-10-05 20:46:45

关于梁挠曲线方程解析解与有限元解的简单对比的相关文章

linux下redis与phpredis安装详解与简单操作

首先下载redis安装包 [[email protected] ~]#wget http://download.redis.io/releases/redis-3.0.2.tar.gz [[email protected] ~]# tar xzf redis-3.0.2].tar.gz [[email protected] ~]# cd redis-3.0.2 [[email protected] redis-3.0.2]#ls [[email protected] redis-3.0.2]#m

TestNg依赖详解(一)------简单的依赖(单一方法依赖)

TestNg依赖测试之简单方法依赖,通过dependsOnMethods属性来配置依赖方法 Java code: /** * * <p> * Title: TestngDependencies * </p> * * <p> * Description: Testng提供了两种依赖实现 * * 1.强制依赖:某个测试用例之前需要执行的依赖链中如果有一个失败,那么接下来所有的测试都不会被执行 * 2.顺序依赖(软依赖):顺序依赖的用处更多是用来检测一个测试链是否按照正确的顺

IOS 第三方 - CocoaPods详解之---简单使用篇

CocoaPods详解之----使用篇 作者:wangzz 原文地址:http://blog.csdn.net/wzzvictory/article/details/18737437 转载请注明出处 如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号wangzzstrive来支持我,谢谢! 如果之前做的一切顺利,接下来就可以体验体验CocoaPods的神奇之处了,需要经过以下几步: 为了演示这个过程,我创建了一个名为CocoaPodsTest的工程. 1.创建Podfile CocoaPod

Web---图片验证码生成教程详解-从简单到复杂-从本地到前后台

首先,我们先来看本地如何生成图片验证码的,再来写输出到网页的验证码如何实现. 先来看最简单的-实现的功能是,将一个字符串变成图片写入到文件中 实现代码: package cn.hncu.img; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOE

KVO-理解与简单使用

KVO 就是key value observing (键值监听 /观察者模式)/是一种回调机制 观察者模式 : 一个目标对象管理所有依赖于他的观察者对象 /并在它自身的状态改变时主动通知观察者对象 /这个制动通知通常是通过调用各观察者对象所提供的接口方法来实现的 /观察者模式比较完美的将目标对象和观察者对象解耦 简单来说 : 在某个对象注册监听者后/在被监听的对象发生改变时/对象会发送一个通知给监听者/以便监听者执行回调 就是每次指定的被观察的对象的属性被修改后 /KVO就会自动通知响应的观察者

Log4j 2.0在开发中的高级使用详解—配置简单的文件输出(四)

在log4j 1.x的版本中,我们想将日志输出的文件中,需要很复杂的配置.这点已经在2.0的版本中得到了大大的改善. 简单的配置,以及灵活的应用,已经成为了一种趋势.不管我们以追加的形式写日志文件,还是覆盖的形式,配置他们都是小菜. 还有比如日志文件大小自动分割,自动备份,无死锁,高性能等等.更令人欣喜的是,它支持json格式的配置,加载快,轻巧,异步读写. 好吧,来看它的使用吧. 看配置文件log4j2.xml代码: <?xml version="1.0" encoding=&

Log4j 2.0在开发中的高级使用详解—配置简单的控制台输出(三)

Log4j 2.0在最近迎来了重大的版本升级.解决了1.x中死锁bug之外,性能也有10倍的提升. 同样的在最新版本中的新特性中.配置文件也不仅仅局限于xml和java特性文件properties.更是支持json和yaml的配置文件. 日志的使用在我们日常开发中经常用到.也有很多的高手遇到过日志死锁问题.在2.0中引入了异步日志处理.死锁问题得以解决. 好吧,介绍了这么多,进入它的helloworld吧. 今天看看它的简单配置.配置输出到console的日志记录器,并且为info级别的输出.

malloc函数详解 (与new对比)

malloc的全称是memory allocation,中文叫动态内存分配,当无法知道内存具体位置的时候,想要绑定真正的内存空间,就需要用到动态的分配内存. 一.原型:extern void *malloc(unsigned int num_bytes); 头文件:#include <malloc.h> 或 #include <alloc.h> (注意:alloc.h 与 malloc.h 的内容是完全一致的.) 功能:分配长度为num_bytes字节的内存块 说明:如果分配成功则

$_FILE参数详解及简单&lt;form&gt;表单无刷新上传文件

$_FILES:经由 HTTP POST 文件上传而提交至脚本的变量,类似于旧数组$HTTP_POST_FILES 数组(依然有效,但反对使用)详细信息可参阅 POST方法上传 $_FILES数组内容如下: $_FILES['myFile']['name'] 客户端文件的原名称 $_FILES['myFile']['type']   文件的 MIME类型,需要浏览器提供该信息的支持,例如"image/gif" $_FILES['myFile']['size']    已上传文件的大小,