| 查看: 932 | 回复: 2 | |||
[交流]
【求助】紧急求教读取CHGCAR的matlab脚本,谢谢
|
| 现在需要深入研究vasp的CHGCAR,希望用matlab读取它,但对矩阵的读取一直没查到相关资料,求教哪位有读能提供取CHGCAR的matlab小脚本,谢谢。 |
» 猜你喜欢
0856材料与化工调剂,339
已经有9人回复
一志愿西安交大材料学硕(英一数二)347,求调剂到高分子/材料相关专业
已经有7人回复
324分 085600材料与化工
已经有9人回复
考研调剂
已经有6人回复
材料专硕306英一数二
已经有3人回复
材料调剂
已经有5人回复
309分085801求调剂
已经有6人回复
一志愿武理材料工程302调剂环化或化工
已经有10人回复
311(085601)求调剂
已经有13人回复
335求调剂
已经有4人回复
» 本主题相关价值贴推荐,对您同样有帮助:
继续求助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人回复
» 抢金币啦!回帖就可以得到:
2026级药学学硕调剂招生
+1/287
【招聘】温州医科大学/附属医院/瓯江实验室李校堃院士团队诚聘博士后和科研人员
+1/182
数一英一硕士调剂(双一流高校)
+1/181
五邑大学(江门-利物浦公共卫生研究所)招收药学、生物医药专业调剂生
+1/127
老虫子的注册小木虫18周年大礼包
+5/120
北京石油化工学院【化学工程与技术、材料与化工】调剂招生3名!
+1/90
欢迎加入赣南师范大学智能制造与未来能源学院
+2/62
0854电子信息调剂,闽南师范大学光电芯片研发小组
+1/39
三峡大学国家青年人才课题组招2026年化学/材料/化工类硕士调剂生
+1/39
武汉工程大学化环学院程老师课题组招收化学类学硕、化学工程与环境工程专硕调剂
+2/36
首都师范大学招收材料与化工专硕调剂生--中科院半导体所共培
+1/35
吉林工程技术师范学院 交叉学科研究院 材料与化工 调剂招生
+1/18
【博士招生】武汉科技大学招收材料、化工、环境、冶金类2026年“申请-考核”制博士生
+1/8
江西水利电力大学08工学接收调剂
+1/8
重庆三峡科技大学光纤传感课题组招调剂硕士研究生(3.30)
+1/6
哈尔滨工业大学航天学院复合材料与结构研究所招硕士生
+1/6
招生材料与化工、环境科学调剂研究生
+1/5
北京双一流高校--环境科学与工程专业招收调剂
+1/5
哈工大韩飞课题组招收3D微纳加工、光学工程、纳米化学等方向博士生及博后(长期有效)
+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,