| 查看: 997 | 回复: 2 | |||
[交流]
【求助】紧急求教读取CHGCAR的matlab脚本,谢谢
|
| 现在需要深入研究vasp的CHGCAR,希望用matlab读取它,但对矩阵的读取一直没查到相关资料,求教哪位有读能提供取CHGCAR的matlab小脚本,谢谢。 |
» 猜你喜欢
面上再次挂了,太难了,躺也躺不了,倦也卷不过,小学校之殇!
已经有27人回复
8月时间戳变的,举个手。玩一下,释放压力
已经有4人回复
UV压敏胶开发
已经有6人回复
有没有H口的?有收到消息的吗?
已经有3人回复
十年后又回来了,论文投稿求助
已经有3人回复
纯娱乐,不喜欢勿喷
已经有10人回复
面上提前没消息,有中的吗
已经有18人回复
娱乐
已经有4人回复
系统今天又提示维护了,估计离放榜不远了
已经有16人回复
一个有机合成实验室都需要哪些设备?
已经有10人回复
» 本主题相关价值贴推荐,对您同样有帮助:
继续求助Matlab绘图!
已经有8人回复
弱弱问一下:stereochemical activity 是什么意思? 谢谢
已经有5人回复
紧急求助翻译一篇德文文献~翻译其中合成的一部分~急求~谢谢~
已经有4人回复
matlab 计算过程中工作空间变量保存及读取 求解决内存不足的方法
已经有5人回复
帮翻译几段文献,请不要在线翻译,谢谢
已经有2人回复
用matlab统计图片中某种颜色成分占总图片中所有颜色成分的比率
已经有4人回复
【求助】弱弱的问一下Matlab数据提取的问题
已经有5人回复
【求助】用matlab编程,需要将数据自检分类(高手进来指点下)
已经有5人回复
【求助】CHGCAR用什么来读取
已经有10人回复
【求助】matlab如何只读取图像的一部分?
已经有11人回复
【求助】有哪位大侠做过次氯酸叔丁酯啊?帮帮我啊!谢谢
已经有6人回复
【求助】matlab读取fortran输出的txt文件【已解决】
已经有3人回复
【求助】求教matlab解非线性方程组
已经有9人回复
【求助】Weickert的各向异性扩散方程的滤波方法的matlab程序代码
已经有8人回复
» 抢金币啦!回帖就可以得到:
助理研究员——吉林大学-苏州国家实验室光电半导体智能设计与应用团队
+1/474
山东征女友,坐标济南
+1/175
坐标广州,征女友
+2/132
3-丁烯-1-醇(CAS:627-27-0)
+1/98
1,3,2-Dioxaphospholane, 2-(2,2,3,3,3-pentafluoropropoxy)-
+1/97
三(三甲基硅基)甘油醚(CAS:6787-10-6 )
+1/97
四(三甲基硅基)赤藓醇醚(CAS:18547-29-0 )
+1/97
具身智能机器人公司招聘硬件工程师岗位 预算100万内
+1/82
南京大学医工交叉方向招聘脂质纳米材料与RNA递送方向博士后1-2名
+1/77
南京大学医工交叉方向薛璐璐团队招聘脂质纳米材料与RNA递送方向博士后1-2名
+1/74
采用本质安全型氢气流量控制的化学合成 - Alicat ISMC本安防爆质量流量控制器
+2/50
有机合成高级研究员
+1/27
北理工集成电路杰青团队 | 诚招科助理
+1/17
《上海高薪》VS《中科院》
+1/13
瑞典林雪平大学 高峰课题组 诚聘 氮化物基无机材料方向 博士后1名
+1/8
北京师范大学(珠海校区)赵亚然副教授招收2027年电催化推免硕士/博士研究生
+1/4
北京师范大学(珠海校区)赵亚然副教授招收2027年电催化硕士/博士研究生
+1/3
准现货/原装全新超微整机8x NVIDIA HGX A100 80G
+1/2
国自然发榜在即:此刻的你,是什么心情?
+1/1
致每一位等待国自然结果的科研人:我们想听听你的心声
+1/1
★ ★
sunyang1988(金币+2): 谢谢帮助。这样直接粘贴可能有格式错误,如果方便请上传到网盘 2011-01-16 14:10:22
雁儿霏霏(金币+20): 谢谢大虾,能给提供个程序文件吗?粘贴有一些格式错误。邮箱:shangyan2009@gmail.com ,谢谢! 2011-01-16 19:37:24
sunyang1988(金币+2): 谢谢帮助。这样直接粘贴可能有格式错误,如果方便请上传到网盘 2011-01-16 14:10:22
雁儿霏霏(金币+20): 谢谢大虾,能给提供个程序文件吗?粘贴有一些格式错误。邮箱:shangyan2009@gmail.com ,谢谢! 2011-01-16 19:37:24
|
% Read in CHG file to 3D matrix. fid = fopen('CHG','r'); % Read POSCAR part of CHG file: sysname = fgetl(fid); lconst = fscanf(fid,'%f',1); basisvec = fscanf(fid,'%f',[3,3])'; temp1 = fgetl(fid); temp2 = fgetl(fid); species = sscanf(temp2,'%i'); Natoms = sum(species); temp3 = fgetl(fid); atompos_f3 = fscanf(fid,'%f',[3,Natoms])'; volume = abs(dot(basisvec(1, ,cross(basisvec(2, ,basisvec(3, )))*lconst^3;% Read charge density data. (i,j,k) value in i+(j+k*Ny)*Nx, with coordinate % system defined by basis vectors!: gridsize = fscanf(fid,'%i',3); Nx = gridsize(1); Ny = gridsize(2); Nz = gridsize(3); temp4 = fscanf(fid,'%f',[Nx*Ny*Nz,1]); density_sub_h1_surf=reshape(temp4,Nx,Ny,Nz)/volume; % % Magnitization (if present): % temp5 = fscanf(fid,'%i',3); % temp6 = fscanf(fid,'%f',[Nx*Ny*Nz,1]); % magn_lowacc_t2_N�蕆eshape(temp6,Nx,Ny,Nz)/volume; % minval = min(min(min(density))); % maxval = max(max(max(density))); % For rectangular unit cell, unit axes: % Plot isosurface: % prect = patch(isosurface(density,7.5), 'FaceColor', 'red', 'EdgeColor', 'none'); % isonormals(density,prect); % %axis tight; % camlight; lighting phong; % Non-rectangular (general) unit cell: % Need to created position 3D matrices xtemp = zeros(Nx*Ny*Nz,1); ytemp = zeros(Nx*Ny*Nz,1); ztemp = zeros(Nx*Ny*Nz,1); for k = 0:Nz-1 for j = 0:Ny-1 for i = 0:Nx-1 xtemp(1+i+(j+k*Ny)*Nx) = i/Nx*basisvec(1,1)+j/Ny*basisvec(2,1)+k/Nz*basisvec(3,1); ytemp(1+i+(j+k*Ny)*Nx) = i/Nx*basisvec(1,2)+j/Ny*basisvec(2,2)+k/Nz*basisvec(3,2); ztemp(1+i+(j+k*Ny)*Nx) = i/Nx*basisvec(1,3)+j/Ny*basisvec(2,3)+k/Nz*basisvec(3,3); end end end X = reshape(xtemp,Nx,Ny,Nz)*lconst; Y = reshape(ytemp,Nx,Ny,Nz)*lconst; Z = reshape(ztemp,Nx,Ny,Nz)*lconst; z = squeeze(Z(1,1, );ave_z_h1 = squeeze(sum(sum(density_sub_h1_surf,1),2))/(Nx*Ny); %(sqrt(2)*Nx*Ny)*lconst^2; figure %subplot(211) plot(z,ave_z_h1,'k') % figure % p = patch(isosurface(X,Y,Z,density,7.5), 'FaceColor', 'red', 'EdgeColor', 'none'); % isonormals(density,p); % % maxx = max(basisvec(:,1))*lconst; % % minx = min(basisvec(:,1))*lconst; % % maxy = max(basisvec(:,2))*lconst; % % miny = min(basisvec(:,2))*lconst; % % maxz = max(basisvec(:,3))*lconst; % % minz = min(basisvec(:,3))*lconst; % % axis([minx maxx miny maxy minz maxz]) % camlight; lighting phong; % Extract charge density along certain lines: ------------------------------ |
2楼2011-01-16 12:51:04
3楼2011-12-30 22:59:32










回复此楼
,cross(basisvec(2,