| 查看: 912 | 回复: 2 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
[交流]
【求助】紧急求教读取CHGCAR的matlab脚本,谢谢
|
|||
| 现在需要深入研究vasp的CHGCAR,希望用matlab读取它,但对矩阵的读取一直没查到相关资料,求教哪位有读能提供取CHGCAR的matlab小脚本,谢谢。 |
» 猜你喜欢
参与限项
已经有4人回复
有没有人能给点建议
已经有5人回复
假如你的研究生提出不合理要求
已经有12人回复
全日制(定向)博士
已经有5人回复
萌生出自己或许不适合搞科研的想法,现在跑or等等看?
已经有4人回复
Materials Today Chemistry审稿周期
已经有4人回复
对氯苯硼酸纯化
已经有3人回复
所感
已经有4人回复
要不要辞职读博?
已经有7人回复
北核录用
已经有3人回复
» 本主题相关价值贴推荐,对您同样有帮助:
继续求助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/486
限广州,征女友
+2/186
持续创业者,A8离异男征婚,事业遇到瓶颈,寻找创业生活伴侣
+1/170
柔性电子全国重点实验室(南邮)诚聘博士后(长期有效)
+2/136
原子层沉积(ALD)磁控溅射PECVD等微纳代工服务:18817872921
+1/82
供应EXAKT德国艾卡特3D打印材料分散用三辊研磨机80E PLUS
+1/81
北京航空航天大学教授课题组招生启事
+1/80
上海交通大学任垭萌课题组招聘博士后
+1/76
江西理工大学 稀土学院(发光材料与器件研究所) 招收2026届 材料类博士研究生 2名
+2/30
深圳信息职业技术大学-博后招聘(优秀可留校)
+1/28
北京林业大学林学院——昆虫病毒/病毒组——博士招生
+1/28
北京化工大学化学工程学院杨琪教授 邱介山教授,招收储能电池方向博士研究生
+1/24
浙江大学信息光子材料与器件实验室诚聘博士后、科研助理
+1/21
英国布里斯托大学诚招博士生和联合培养生 (近期多个博士奖学金)
+1/14
太原理工大学电工部招聘老师-偏电类专业的博士们快来看啊
+1/9
武汉双一流高校干细胞与肿瘤生物学团队招聘2026级申请考核制博士生
+1/7
博士后招聘(高薪40万+)
+1/5
2026 博士自荐-机器人机构学方向
+1/3
重庆医科大学-药学院-新靶标教育部医药基础研究创新中心-药物化学2026年博士招生
+1/3
[招募] 上海交通大学环境健康课题组科研实习生(环境健康与生物学大数据方向)
+1/1
3楼2011-12-30 22:59:32
★ ★
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












回复此楼
,cross(basisvec(2,