矩阵位移法大作业监工日记

news/2024/9/8 5:05:13

 

 

 

5/15

新建文件夹,先做好前期结构数据化的手写性梳理,写一点变量的定义,感觉有很多重复的信息,但是懒得精简了。

编写输入文件in.txt,和直接用const差不多,感觉不如直接程序内打表,因为后面结构数据化的时候还是直接存的信息,泛用化水平进一步降低。

 

  1 /* 矩阵位移法大作业
  2  单元数:10  结点数:12  整体结点位移编码:22 
  3  结点编码:
  4  1(0,0,1)
  5  2(2,3,4)
  6  3(5,6,7,)
  7  4(0,0,0)
  8  5(8,9,10)
  9  6(5,6,11)
 10  7(0,0,12)
 11  8(13,14,15)
 12  9(16,17,18)
 13  10(13,14,19)
 14  11(0,0,0) 
 15  12(20,21,22) 
 16  单元定位向量: 柱:0 梁:1
 17  (1) 【0,0,1,2,3,4】 1,2 0
 18  (2)【2,3,4,5,6,7】 2,3  1
 19  (3)【0,0,0,8,9,10】 4,5  0
 20  (4)【8,9,10,5,6,11】 5,6  0
 21  (5)【8,9,10,13,14,15】 5,8  1
 22  (6)【5,6,11,16,17,18】 6,9  1
 23  (7)【0,0,12,13,14,15】 7,8  0
 24  (8)【 13,14,15,16,17,18】 8,9  0
 25  (9)【13,14,19,20,21,22】 10,12  1
 26  (10)【0,0,0,20,21,22】 11,12  0
 27 */
 28 /* 输入文件 in.txt
 29  12 10 22
 30  100000 15000
 31  1000000 10000
 32  3 4 3
 33  4 3 2 
 34  20
 35  12 14 10
 36  0 0 1 
 37  2 3 4
 38  5 6 7
 39  0 0 0
 40  8 9 10
 41  5 6 11
 42  0 0 12
 43  13 14 15
 44  16 17 18
 45  13 14 19
 46  0 0 0
 47  20 21 22
 48  1 2 0
 49  2 3 1
 50  4 5 0
 51  5 6 0
 52  5 8 1
 53  6 9 1
 54  7 8 0
 55  8 9 0
 56  10 12 1
 57  11 12 0
 58 */ 
 59 
 60 
 61 
 62 
 63 #include<iostream>
 64 #include<fstream>
 65 #include<cstdio>
 66 #include<algorithm>
 67 #include<cmath> 
 68 using namespace std;
 69 double EA[3],EI[3]; //梁和柱的强度参数表
 70 double l[4],h[4],q[4],Fp; // 跨长、层高、均布荷载、集中力
 71 double K[25][25],k[25][25]; // 整体刚度矩阵 和 单元刚度矩阵
 72 double alpha,T[8][8]; //旋转角和旋转矩阵 
 73 int Njoint,Nelem,NglbDOF; //结点数,单元数,结点位移个数 
 74 struct Joint{ //结点信息 
 75     double x,y; //坐标
 76     int GDOF[5]; //结点位移编码 
 77 }J[20];
 78 struct Elem{ //单元信息 
 79     int N1,N2; //两个结点
 80     int GlbDOF[8]; //单元定位向量
 81      double len,A,EI,EA; //长度,转角,抗弯刚度,抗拉刚度 
 82 }E[15];
 83 int main(){
 84     cin>>Njoint>>Nelem>>NglbDOF; //读入信息 并 进行结构数据化 
 85     cin>>EA[0]>>EI[0]>>EA[1]>>EI[1];
 86     for(int i=1;i<=3;++i) cin>>l[i];
 87     for(int i=1;i<=3;++i) cin>>h[i]; cin>>Fp;
 88     for(int i=1;i<=3;++i) cin>>q[i];
 89     
 90     J[1].x=J[2].x=0;  //结点初始化 
 91     J[3].x=J[4].x=J[5].x=J[6].x=l[1];
 92     J[7].x=J[8].x=J[9].x=J[10].x=l[1]+l[2];
 93     J[11].x=J[12].x=l[1]+l[2]+l[3];
 94     J[1].y=J[4].y=J[7].y=J[11].y=0;
 95     J[12].y=h[3];
 96     J[5].y=J[8].y=J[10].y=h[2];
 97     J[2].y=h[1];
 98     J[3].y=J[6].y=J[9].y=2.0*h[2];    
 99     for(int i=1;i<=Njoint;++i) 
100         for(int j=1;j<=3;++j) 
101             cin>>J[i].GDOF[j];
102             
103     for(int i=1;i<=Nelem;++i){ //单元初始化 
104         cin>>E[i].N1>>E[i].N2;
105         int opt; cin>>opt;
106         E[i].EA=EA[opt]; E[i].EI=EI[opt];
107         for(int j=1;j<=3;++j){
108             E[i].GlbDOF[j]=J[E[i].N1].GDOF[j];
109             E[i].GlbDOF[j+3]=J[E[i].N2].GDOF[j];
110         } 
111         E[i].len=sqrt(pow(J[E[i].N1].x-J[E[i].N2].x,2)+pow(J[E[i].N1].y-J[E[i].N2].y,2));
112         E[i].A=
113     }
114 
115     
116 } 
5/15

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/32017.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

原创-CommonsCollections1-DefaultMap链

今天我打算整点儿不一样的内容,通过之前学习的TransformerMap和LazyMap链,想搞点不一样的,所以我关注了另外一条链DefaultedMap链,主要调用链为: 调用链详细描述:ObjectInputStream.readObject()DefaultedMap.readObject()DefaultedMap.get()ChainedTransformer.transfor…

Idefics2 简介: 为社区而生的强大 8B 视觉语言模型

我们很高兴在此发布 Idefics2,这是一个通用的多模态模型,接受任意文本序列和图像序列作为输入,并据此生成文本。它可用于回答图像相关的问题、描述视觉内容、基于多幅图像创作故事、从文档中提取信息以及执行基本的算术运算。 Idefics2 由 Idefics1 改进而得,其参数量为 8B…

文件处理命令

目录1.sort命令--对行内容进行升序排序2.uniq命令--对连续的重复行进行去重3.tr命令--对输入的内容进行替换(1)删除空行(2) Windows的另起一行格式(\r\n)转换成Linux的另起一行格式(\n)(3)对数组排序4.cut命令--对行内容进行字段截取5.split命令--linux下将一个大的文件拆…

Django3.2使用xadmin2遇到的问题

使用xadmin2遇到的问题&解决 环境配置: 使用的模块版本:关联的包 Django 3.2.15 mysqlclient 2.2.4 xadmin 2.0.1 django-crispy-forms >= 1.6.0 django-import-export >= 0.5.1 django-reversion >= 2.0.0 django-formto…

NSSCTF round#22逆向

NSSCTF round#22逆向1.wp要及时写不然忘光光 2.赛题分文件夹放ezcrypt 下载下来是python打包的exe,解包出pyc用pycdc反编译看一下嗯不认识BEFORE_WITH命令。丢到gpt4o里看看还蛮准确的,和作者提供的源码一样。不过对填充的处理不对,原程序是填充\x00。不过比自己硬看好太多了…

蓝桥杯-外卖店优先级(简单写法)

“饱了么”外卖系统中维护着 N 家外卖店,编号 1∼N。 每家外卖店都有一个优先级,初始时 (0 时刻) 优先级都为 0。 每经过 1 个时间单位,如果外卖店没有订单,则优先级会减少 1,最低减到 0;而如果外卖店有订单,则优先级不减反加,每有一单优先级加 2。 如果某家外卖店某时…

【转载】高可用(HA)集群之pacemaker+corosync

转载地址:https://blog.51cto.com/liheng1815/5637598 高可用(HA)集群之pacemaker+corosync方案0x00 概念 在传统Linux集群种类中,主要分了三类: ​ 一类是LB(负载均衡)集群,这类集群的作用是对用户流量做负载均衡,让其后端每个real-server都能均衡的处理一部分请求;…

Android系统启动流程

在Android中系统的启动流程是一个经常会被问到的问题,那么下面我们通过一张图来说明一下 从上面的图片中可以看到它的一个启动流程. 1.BootLoader首先,当我们点击电源开关后,引导芯片代码开始从预定义的地方(固化在ROM)开始执行。加载引导程序到RAM,然后执行,这时执行的就是…