Fortran Coder

查看: 2759|回复: 3
打印 上一主题 下一主题

[文件读写] 写入文件 有限元差分法计算电磁场

[复制链接]

3

帖子

2

主题

0

精华

新人

F 币
16 元
贡献
9 点
跳转到指定楼层
楼主
发表于 2022-2-21 12:55:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
program main
real ob(-700:700,-700:700)                !存放各网格介质的编号,x轴,y轴分别从-700到700
real Media(1:4,1:15)                        !各介质的电磁参数。第一位1到4分别表示epsilon.r,mu.r,sigma,sigma.m;第二位表示介质编号
character*10 FileName                        !目标信息输出到FileName文件中
real WaveLength,WL                                !入射波长和每波长网格数
real Ismin,Ismax,Jsmin,Jsmax        !目标区域界线
real MediaNo                                        !目标区域内所有介质数目
integer Record,i,j                                !定义整数record,i,j

FileName='rect.sct'                                !文件名为'rect.sct'
WaveLength=1.                                        !入射波长为1
WL=40.                                                        !每波长网格数为40
Ismin=-60.
Ismax=60.
Jsmin=-60.
Jsmax=60.                                                !x轴,y轴目标区域界限为(-60,60)
MediaNo=1                                                !本例中只有一种金属介质,因此介质数目为1
Media(1,1)=1.
Media(2,1)=1.
Media(3,1)=3.72e+7
Media(4,1)=0.                                        !金属介质的电磁参数赋值

do i=Ismin,Ismax
        do j=Jsmin,Jsmax
                ob(i,j)=0.0
        end do
end do                                                        !空间所有网格初始值设为背景,即从(-60,-60)到(60,60)所有网格介质编号均为零
do i=Ismin,Ismax
        do j=Jsmin,Jsmax
                if((i.ge.-WL).and.(i.le.WL-1).and.(j.ge.-WL).and.(j.le.WL-1))then
                        ob(i,j)=1.0
                end if
        end do
end do                                                        !将所有网格中属于金属方柱的网格的介质编号改为1

open(1,File=FileName,access='direct',recl=4)
write(1,rec=1) WaveLength                !输出
write(1,rec=2) WL
write(1,rec=3) Ismin
write(1,rec=4) Ismax
write(1,rec=5) Jsmin
write(1,rec=6) Jsmax
write(1,rec=7) MediaNo
Record=7
do j=1,MediaNo
        do i=1,4
                Record=Record+1
                write(1,rec=Record) Media(i,j)
        end do
end do                                                        !写出金属介质的电磁参数
do i=Ismin,Ismax
        do j=Jsmin,Jsmax
                Record=Record+1
                write(1,rec=Record) ob(i,j)
        end do
end do                                                        !写出网格介质编号
close(1)
write(*,*) Ismin,Ismax,Jsmin,Jsmax        !写出目标区域界限
end

生成的文件打开是乱码是什么原因呀,求大佬指点

分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

159

帖子

2

主题

1

精华

大师

Vim

F 币
961 元
贡献
469 点

规矩勋章

沙发
发表于 2022-2-21 15:28:18 | 只看该作者
没有格式描述,写的是二进制文件。

3

帖子

2

主题

0

精华

新人

F 币
16 元
贡献
9 点
板凳
 楼主| 发表于 2022-2-21 16:00:19 | 只看该作者
Transpose 发表于 2022-2-21 15:28
没有格式描述,写的是二进制文件。

您好,我刚刚试着加入了格式描述结果打开还是乱码,请问您知道是什么原因吗?
                                                                                                                                                                                                                                                                    €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?              €?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
显示出来全部是这样子的

954

帖子

0

主题

0

精华

大师

F 币
184 元
贡献
75 点

规矩勋章元老勋章新人勋章水王勋章热心勋章

QQ
地板
发表于 2022-2-22 08:26:48 | 只看该作者
因为这是二进制文件,你用文本编辑器打开,自然就是乱码了
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-5 09:40

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表