24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 927  |  回复: 9
当前主题已经存档。

sgyin

铁杆木虫 (正式写手)

[交流] 【求助】Matlab如何编写,请指教

文件名:ZnO.xyz(文本可打开),存储10个原子坐标。
内容如下:
============
10

Zn   -0.00133    1.53941    0.00000
Zn   -1.33383    0.76855    2.47350
Zn    1.33117    0.76855    2.47350
Zn   -0.00133    3.07651    2.47350
Zn    0.00000    1.53710    0.00000
O    -1.33117    0.76855    2.47350
O     1.33383    0.76855    2.47350
O     0.00133    3.07651    2.47350
O     0.00133    1.53941    0.00000
O    -1.33250    0.77086    2.47350
=============
已知:
f_Zn=1673;
f_O =2432;
请问如何求:(1)r_nm (两两原子之间的距离,n、m=Zn或O);
(2)对n、m求和{  f_n*f_m*(1+r_nm)  }

[ Last edited by csfn on 2008-12-29 at 20:18 ]
回复此楼

» 猜你喜欢

<ahref="http://www.TickerFactory.com/"><imgborder="0"src=&am
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

davin

木虫 (著名写手)

一只来自东北的大虫

,首先,你最好将Zn和O删除。

在通过A=load(ZnO.xyz); 将数据载入
A1=A(1:5,;
A2=A(6:10,;
f_Zn=1673;
f_O =2432;
以后你在通过你的要求进行编程。希望能给你点帮助。
2楼2008-01-14 09:03:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sgyin

铁杆木虫 (正式写手)

First,load(ZnO.xyz)是错误的!
引用回帖:
Originally posted by davin at 2008-1-14 09:03:
,首先,你最好将Zn和O删除。

在通过A=load(ZnO.xyz); 将数据载入
A1=A(1:5,;
A2=A(6:10,;
f_Zn=1673;
f_O =2432;
以后你在通过你的要求进行编程。希望能给你点帮助。

<ahref="http://www.TickerFactory.com/"><imgborder="0"src=&am
3楼2008-01-14 11:30:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

housekeeper

新虫 (初入文坛)

rn_m=
0        2.9134        2.9134        2.9122        0.0026655        2.9122        2.9146        2.9122        0.00266        2.9122
2.9134        0        2.665        2.665        2.9134        0.00266        2.6677        2.6663        2.9146        0.0026655
2.9134        2.665        0        2.665        2.9122        2.6623        0.00266        2.6637        2.9122        2.6637
2.9122        2.665        2.665        0        2.9134        2.6637        2.6663        0.00266        2.9122        2.6623
0.0026655        2.9134        2.9122        2.9134        0        2.9122        2.9134        2.9134        0.0026655        2.9122
2.9122        0.00266        2.6623        2.6637        2.9122        0        2.665        2.665        2.9134        0.0026655
2.9146        2.6677        0.00266        2.6663        2.9134        2.665        0        2.665        2.9134        2.6663
2.9122        2.6663        2.6637        0.00266        2.9134        2.665        2.665        0        2.9122        2.6637
0.00266        2.9146        2.9122        2.9122        0.0026655        2.9134        2.9134        2.9122        0        2.9134
2.9122        0.0026655        2.6637        2.6623        2.9122        0.0026655        2.6663        2.6637        2.9134        0
4楼2008-01-14 15:17:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sgyin

铁杆木虫 (正式写手)

怎么算出来的呢?
引用回帖:
Originally posted by housekeeper at 2008-1-14 15:17:
rn_m=
0        2.9134        2.9134        2.9122        0.0026655        2.9122        2.9146        2.9122        0.00266        2.9122
2.9134        0        2.665        2.665        2.9134        0.00266        2.6677        2.6663        2.9146        0.0026655
2.9134        2.665        0        2.665        2.9122        2.6623        0.00266        2.6637        2. ...

<ahref="http://www.TickerFactory.com/"><imgborder="0"src=&am
5楼2008-01-15 16:40:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

你用fopen命令和fgetl命令将你这个文件中的数据读进去;
或者你将你的数据存为txt文件之后,在matlab命令窗口上有个file工具,file里面有个import data选项,点击导入即可。


用load是肯定不行的,因为你的文件上面还有10在那里,load命令就会出错
导入数据之后你再用matlab命令窗口对你的数据进行操作,这样我想你应该会编程了吧?
只用一个循环就可以了。
祝楼主好运……
What would Jesus do?
6楼2008-01-16 09:44:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

housekeeper

新虫 (初入文坛)

回复

在附件里,你看看吧
7楼2008-01-16 23:12:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sgyin

铁杆木虫 (正式写手)

我用过你那种方法,这样做不能对两种原子求和(问题(2)),关键是这一步难实现。
引用回帖:
Originally posted by housekeeper at 2008-1-16 23:12:
在附件里,你看看吧

<ahref="http://www.TickerFactory.com/"><imgborder="0"src=&am
8楼2008-01-17 22:16:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sgyin

铁杆木虫 (正式写手)

谢谢dnp,对问题(2)有点头绪了。不过不是用fopen、fgetl,我曾经也用fopen、fgetl试了试没成功,fgetl读取一行数据以后:
“Zn  33.44  333.2  2.33”怎样利用这行数据去调用f_Zn和 33.44  333.2  2.33算r_nm???望赐教!
引用回帖:
Originally posted by dnp at 2008-1-16 09:44:
你用fopen命令和fgetl命令将你这个文件中的数据读进去;
或者你将你的数据存为txt文件之后,在matlab命令窗口上有个file工具,file里面有个import data选项,点击导入即可。


...

<ahref="http://www.TickerFactory.com/"><imgborder="0"src=&am
9楼2008-01-17 23:07:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

不知道你的那个f_Zn是不是已知的,如果是已知的话,你在编程的时候可以当作输入参数;

要是你直接在命令窗口计算,可以手动输入;

如果需要计算的话,当你将数据导入的时候可以利用导入的数据进行计算再结合你的计算公式进行计算,这个也很容易实现。


说实话,我看不懂你的第二个算式是怎么回事,求和?后面的算式好像不像是一个求和算法。

你在用fgetl读取数据之后,你可以进行操作的,不要把他们都放到一个字符串里面,也就是说,把前面代表原子信息的放到一个字符串向量(char格式)或者是单元数组(cell)里面,而剩余的坐标数据就存为一个三列的矩阵,这样,你就可以随意地调用坐标数据来进行你的计算了。这里我想建议你用一个命令,就是判断空格的命令:isspace (详细看help)。这样你读取数据的时候就方便多了。

祝楼主好运!

What would Jesus do?
10楼2008-01-18 09:23:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 sgyin 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 本科211,293分请求调剂 +6 莲菜就是藕吧 2026-04-03 7/350 2026-04-04 11:12 by 莲菜就是藕吧
[考研] 400分求调剂 +3 尴尬且挠头 2026-04-04 3/150 2026-04-04 08:41 by jp9609
[考研] 电子信息调剂交叉学科有推荐吗 +6 jhtfeybgj 2026-04-01 8/400 2026-04-04 07:52 by 1753564080
[考研] 319求调剂 +3 星星不眨眼喽 2026-04-03 3/150 2026-04-03 21:45 by zhq0425
[考研] 0835学硕299求调剂 08大类可接受 +3 useryy 2026-04-03 3/150 2026-04-03 20:23 by zhq0425
[考研] 机械专硕297 +3 Afksy 2026-04-03 3/150 2026-04-03 14:24 by 1753564080
[考研] 085501一志愿天工大,机械专硕求调剂,跨材料 +3 33上 2026-04-03 3/150 2026-04-03 14:08 by 1753564080
[考研] 材料与化工306分找调剂 +10 沧海轻舟e 2026-04-03 11/550 2026-04-03 11:07 by 啵啵啵0119
[考研] 071000生物学调剂 +8 知昭蔓 2026-04-02 8/400 2026-04-03 10:36 by macy2011
[考研] 一志愿深大085601材料工程专业(专硕)300分可以调剂去哪 +8 10160315 2026-04-02 8/400 2026-04-03 09:36 by hypershenger
[考研] 一志愿陕西师范大学生物学317分 +5 1563日。 2026-04-02 5/250 2026-04-03 06:58 by ilovexiaobin
[考研] 材料调剂 +7 一样YWY 2026-04-02 7/350 2026-04-02 21:49 by dongzh2009
[考研] 考研调剂 +3 李木子0120 2026-04-02 5/250 2026-04-02 21:45 by dongzh2009
[考研] 322求调剂:一志愿湖南大学 材料与化工(085600),已过六级。 +12 XX小邓 2026-03-29 13/650 2026-04-02 21:39 by 百灵童888
[考研] 264分,求任意工科调剂 +4 zzlqwq 2026-03-29 5/250 2026-04-02 17:17 by 何曾几何
[考研] 材料科学与工程调剂 +18 深V宿舍吧 2026-03-30 19/950 2026-04-02 10:28 by sanrepian
[考研] 【求调剂】新能源材料本科,一志愿211,初试321 +6 求调剂学校, 2026-04-02 6/300 2026-04-02 09:41 by 晴空210210
[硕博家园] 博一被送出联培感觉不适应怎么办 +3 全村的狗 2026-03-31 3/150 2026-04-01 10:44 by 328838485
[基金申请] 面上5B能上会吗? +8 redcom 2026-03-29 8/400 2026-03-31 15:53 by niuailing
[有机交流] 甲基亚磺磺酸钠和甲基磺酸酯反应机理 10+3 kaobao456 2026-03-29 4/200 2026-03-30 23:16 by nBu锂
信息提示
请填处理意见