- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
并行计算算例.doc
并行计算算例
题目:
一维(X)电磁场FDTD模拟,高斯源,一阶Mur吸收边界,阻塞消息通信方式(SSend) 同步通信模式采用c*delta(t)/delta(x)=0.5简化起动进程数必须大于等于2Module parameter_mod* 自定义模型,此处不需要End Module parameter_mod
* main program******************************************************************************Program FDTD1D_MPIuse parameter_modimplicit noneinclude mpif.h*定义常量* c:光速,dx:离散间隔, N:x长度,dt:时间间隔(满足稳定条件), T:时间长度,Nt:时间点数,default:默认参数开关。double precision??? :: c =3.0e8double precision??? :: dx=0.005double precision??? :: N=1.0integer?????? :: Nx0double precision??? :: dtdouble precision??? :: T=1.0e-9integer?????? :: Ntinteger?????? :: default=0
*Ey:用于保存Ey结果(不必要),node_Ey,node_Hz:该进程中的Ey,Hz分量,node_Ey_right,node_Hzleft:进程间电磁场传递增,*node_Eyoldleft:最后一个进程(numberofprocessors-1)中的node_Ey(nx-1)分量,用于计算吸收边界*?node_Eyoldright:第一进程(0,即主进程)中的node_Ey分量,用于计算吸收边界double precision, allocatable :: Ey(:)
double precision, allocatable :: node_Ey(:)double precision, allocatable :: node_Hz(:)
double precision???? node_Ey_rightdouble precision???? node_Hz_left
double precision???? node_Eyoldleftdouble precision???? node_Eyoldright* nx:该进程中的结点数,source_id:源所在进程ID,ksn:源所在进程中的结点号,* n_average:平均每个进程结点数,n_remain:结点余数(分配给从进程)。* displs recvcounts:用于数据收集的控制数组。displs(i):第i号进程数据偏移量,recvcounts(i):第i号进程数据量。* num_Ey:该进程Ey总量。integer nxinteger source_id, ksninteger n_average, n_remaininteger, allocatable::displs(:), recvcounts(:)integer???? :: num_Ey* i,nstep:循环变量* nxtemp,kstemp,temp:其它蓝临时变量* flag:用于寻找源的位置integer i, nstepinteger nxtemp, kstemp, templogical flag* w:源脉冲宽度,t0:脉冲峰值出现位置(点号),ks:源的位置(X,点号),pulse:源值。double precision :: wdouble precision :: t0double precision :: ksdouble precision :: pulse* 本进程ID,ierr错误号, numberofprocessors:总进程数,status:消息接收状态,main_id:主进程ID(0),* tagnx,tagEy,tagHz,TagNNt:消息信封标志。integer processorID, ierrinteger numberofprocessorsinteger status(MPI_Status_size)integer,parameter :: main_id=0integer,parameter :: tagnx=1, tagEy=2, tagHz=3, tagNNt=4* 并行初始化,生成通信域(子)(MPI_C
您可能关注的文档
最近下载
- 2025电动航空器电推进系统动力电机技术规范.docx VIP
- DB37╱T 3655-2019 化工园区大气环境风险监控预警系统技术指南(试行).pdf VIP
- 百灵达FLOW-8快速使用说明书.pptx VIP
- 化工园区危险品运输车辆停车场建设标准.pdf VIP
- 《党政机关厉行节约反对浪费条例》专题党课PPT课件模板.pptx VIP
- T/HGJ 10600-2019 烧碱装置安全设计标准.docx VIP
- 最新清晰版ISO50001(中word版).docx VIP
- 临床医学 《门静脉高压症》教学课件.ppt VIP
- 最新:机械通气患者转运课件.pptx VIP
- (高清版)DB44∕T 2598-2024 《省级体育社会团体建设规范》.pdf VIP
文档评论(0)