24小时热门版块排行榜    

查看: 4330  |  回复: 8

zml90h

银虫 (小有名气)

[求助] Matlab与Fortran的科学计数法 已有2人参与

各位虫友好,

小生最近在matlab与Fortran的数据共享中遇到一个难题。
比如说一个数a=136.88,
matlab科学计数法可表示为,a = 1.3688e+02;
Fortran语言中的科学计数法可表示为,a=0.13688D+03;
如今我利用matlab进行数据处理,想使得输出的结果能够被Fortran正常读取而又能保证精度,但是matlab输出的e表示的科学计数法不能被fortran接受,因此想请问虫友们,matlab是否可以按照fortran所要求的科学计数的格式输出。若可以,该怎样操作呢?

谢谢
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

做一个拥有哲学头脑的技术人
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

virtualzx

木虫 (著名写手)

【答案】应助回帖

★ ★ ★ ★
感谢参与,应助指数 +1
jjdg: 金币+1, 感谢参与 2013-12-23 13:17:36
zml90h: 金币+3, ★有帮助 2013-12-23 16:17:37
Fortran中格式处改用"*"来自动读入就可以了
2楼2013-12-23 11:33:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

laohuajiang

至尊木虫 (职业作家)

老花匠

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
jjdg: 金币+1, 感谢参与 2013-12-23 13:17:30
zml90h: 金币+2, ★有帮助 2013-12-23 16:17:44
当然可以,matlab功能相当强大。如在matlab的命令窗口中执行
fortran(S)就可以把表达式变成fortran格式的
详细情况与示例,请参考其帮助
doc fortran
静坐常思自己过,闲谈莫论他人非!---老花匠(老非老-春残意彷徨;花非花-芳踪觅繁华,匠非匠-最美难得糊涂!)
3楼2013-12-23 13:13:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zml90h

银虫 (小有名气)

引用回帖:
2楼: Originally posted by virtualzx at 2013-12-23 11:33:22
Fortran中格式处改用"*"来自动读入就可以了

我所用的fortran代码是一个实验室官网提供的,我对Fortran是一窍不通的。现在只想让matlab输出的数据为0.13688D+03的形式,不知怎么操作
做一个拥有哲学头脑的技术人
4楼2013-12-23 14:58:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zml90h

银虫 (小有名气)

引用回帖:
3楼: Originally posted by laohuajiang at 2013-12-23 13:13:46
当然可以,matlab功能相当强大。如在matlab的命令窗口中执行
fortran(S)就可以把表达式变成fortran格式的
详细情况与示例,请参考其帮助
doc fortran

你好,
没有找到你所说的 doc fortran, 在帮助文件里面搜索fortran,结果全部是matlab与fortran的混合编程。其实我的问题很简单,就是,matlab中是否有什么命令使带格式输出数据时输出的数据为0.13688D+03的形式。
当然字符串分段输出可以实现,但是这样显得很麻烦,而且不能体现出matlab的强大。所以想请教各位大侠,是否有这种格式输出的命令。
做一个拥有哲学头脑的技术人
5楼2013-12-23 15:05:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

laohuajiang

至尊木虫 (职业作家)

老花匠

引用回帖:
5楼: Originally posted by zml90h at 2013-12-23 15:05:11
你好,
没有找到你所说的 doc fortran, 在帮助文件里面搜索fortran,结果全部是matlab与fortran的混合编程。其实我的问题很简单,就是,matlab中是否有什么命令使带格式输出数据时输出的数据为0.13688D+03的形式 ...

可能是matlab版本的问题,建议用使用较新版本。
不但可输出fortran ,还可以输出C ,latex等。如下图
Matlab与Fortran的科学计数法
静坐常思自己过,闲谈莫论他人非!---老花匠(老非老-春残意彷徨;花非花-芳踪觅繁华,匠非匠-最美难得糊涂!)
6楼2013-12-23 15:48:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zml90h

银虫 (小有名气)

引用回帖:
6楼: Originally posted by laohuajiang at 2013-12-23 15:48:29
可能是matlab版本的问题,建议用使用较新版本。
不但可输出fortran ,还可以输出C ,latex等。如下图
...

这个函数我找到了,功能是将matlab代码转换为fortran代码,但是我只需要matlab输出的数据格式发生变化。这样能解决我的问题吗?求详解
做一个拥有哲学头脑的技术人
7楼2013-12-23 16:07:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

laohuajiang

至尊木虫 (职业作家)

老花匠

引用回帖:
7楼: Originally posted by zml90h at 2013-12-23 16:07:11
这个函数我找到了,功能是将matlab代码转换为fortran代码,但是我只需要matlab输出的数据格式发生变化。这样能解决我的问题吗?求详解...

如果仅涉及D和E的事,建议采用2楼的思路!
静坐常思自己过,闲谈莫论他人非!---老花匠(老非老-春残意彷徨;花非花-芳踪觅繁华,匠非匠-最美难得糊涂!)
8楼2013-12-23 16:16:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

virtualzx

木虫 (著名写手)

引用回帖:
4楼: Originally posted by zml90h at 2013-12-23 01:58:10
我所用的fortran代码是一个实验室官网提供的,我对Fortran是一窍不通的。现在只想让matlab输出的数据为0.13688D+03的形式,不知怎么操作...

fortran是可以正常读取0.13688E+03格式的数据的。请先尝试一下换成0.13688D+03是否同样读取有问题。
如果读取错误,说明数据格式和输入不吻合,不只是E和D的问题,小数点位置,字符长度等可能导致读入不正确。要准备可靠的输入,一定要找到fortran读取的格式字符串
9楼2013-12-23 22:53:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zml90h 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 zSbvVX9JFl9J 2026-11-09 3/150 2026-11-10 01:40 by FChKX8meu1ds
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 zSbvVX9JFl9J 2026-11-09 4/200 2026-11-10 01:29 by FChKX8meu1ds
[考博] 27博士申请 +3 白白白ly 2026-11-09 3/150 2026-11-09 21:39 by szq0819
[考博] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 kvewwGtKktqB 2026-11-04 12/600 2026-11-09 13:26 by Equinoxhua
[考研] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 ttH3f1oA6ace 2026-11-04 15/750 2026-11-09 13:19 by Equinoxhua
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +6 5sJFDKp2kwuI 2026-11-06 14/700 2026-11-09 11:52 by GwrQVVR6Oenx
[考博] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 5sJFDKp2kwuI 2026-11-06 15/750 2026-11-09 11:41 by GwrQVVR6Oenx
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 5sJFDKp2kwuI 2026-11-06 10/500 2026-11-09 08:00 by IhnEQauGmT3K
[考研] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 5sJFDKp2kwuI 2026-11-06 12/600 2026-11-09 06:32 by l48hFd8Nwae2
[公派出国] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 5sJFDKp2kwuI 2026-11-06 8/400 2026-11-09 00:14 by l48hFd8Nwae2
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +5 5sJFDKp2kwuI 2026-11-06 9/450 2026-11-08 22:46 by l48hFd8Nwae2
[教师之家] 延安大学回应“副教授留绝笔信”:确已离世,正核实举报内容 +3 yexuqing 2026-11-04 5/250 2026-11-07 13:22 by 苏东坡二世
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +5 ttH3f1oA6ace 2026-11-04 10/500 2026-11-06 16:12 by 5sJFDKp2kwuI
[公派出国] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +6 ttH3f1oA6ace 2026-11-04 12/600 2026-11-06 16:10 by 5sJFDKp2kwuI
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 kvewwGtKktqB 2026-11-04 14/700 2026-11-06 05:10 by qL1cU46YIdK0
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +6 kvewwGtKktqB 2026-11-04 16/800 2026-11-06 05:00 by qL1cU46YIdK0
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 ttH3f1oA6ace 2026-11-04 7/350 2026-11-06 02:13 by qL1cU46YIdK0
[考研] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 ttH3f1oA6ace 2026-11-04 10/500 2026-11-06 02:04 by qL1cU46YIdK0
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 ttH3f1oA6ace 2026-11-04 9/450 2026-11-06 02:02 by qL1cU46YIdK0
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 hNpp4Y2CGvSC 2026-11-04 12/600 2026-11-06 01:53 by qL1cU46YIdK0
信息提示
请填处理意见