24小时热门版块排行榜    

Znn3bq.jpeg
汕头大学海洋科学接受调剂
查看: 3264  |  回复: 2
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

1025493989

新虫 (正式写手)

[求助] 使用matlab用介电常数和磁导率求解反射率的程序问题 已有2人参与

load w.txt;
f=w(:,1);
e1=w(:,2);
e11=w(:,3);
u1=w(:,4);
u11=w(:,5);
e=e1-i*e11;
u=u1-i*u11;
k1=(u./e).^0.5;
k2=(u.*e).^0.5;
K=2*pi*0.0080/3;
z=k1.*tanh(i*(K.*f./1).*k2);
RL=20.*log10(abs(z-1)./abs(z+1));
%计算结果输出,Excel格式
Excel=actxserver('Excel.Application');
set(Excel,'Visible',1);
Workbooks=Excel.Workbooks;
Workbook=invoke(Workbooks,'Add');
Sheets=Excel.ActiveworkBook.Sheets;
Sheet2=get(Sheets,'Item',2);
invoke(Sheet2,'Activate');
Activesheet=Excel.Activesheet;
A=[f,RL];
ActivesheetRange=get(Activesheet,'Range','A1:B201');
set(ActivesheetRange,'Value',A);
Range=get(Activesheet,'Range','A1:B201');
plot(f,RL);xlabel('\it  频率 / GHz\rm'),ylabel('\it 吸收损耗 / dB \rm');
%输出路径
invoke(Workbook,'SaveAs','C:\Documents and Settings\Administrator\桌面\新建文件夹 );invoke(Excel,'Quit');

出现以下错误提示,不知道原因出在哪,求指导,谢谢
Error using load
Unknown text on line number 1 of ASCII file C:\Users\thinkpad\Desktop\w.txt
"f".
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小龙123457

新虫 (初入文坛)

【答案】应助回帖

引用回帖:
1楼: Originally posted by 1025493989 at 2015-10-17 22:42:52
load w.txt;
f=w(:,1);
e1=w(:,2);
e11=w(:,3);
u1=w(:,4);
u11=w(:,5);
e=e1-i*e11;
u=u1-i*u11;
k1=(u./e).^0.5;
k2=(u.*e).^0.5;
K=2*pi*0.0080/3;
z=k1.*tanh(i*(K.*f./1).*k2);
RL=20.*log10(abs ...

能将这个程序发给我吗??

发自小木虫IOS客户端
3楼2017-06-06 16:42:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 3 个回答

小懒虫1号

木虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
fegg7502: 金币+1, 鼓励交流 2015-10-18 11:02:49
1025493989: 金币+20, ★★★很有帮助, 谢谢 2015-10-18 11:18:28
一、纯数据txt文件(没有字母和中文,纯数字)

例如test.txt文件,内容为“17.901 -1.1111 33.045
                          17.891 -1.1286 33.045
                          17.884 -1.1345 33.045”

   可以在command window中输入load test.txt ,然后就会产生一个test的数据文件,内容跟test.txt中的数据一样

;另一种方法是在file/import data....../next/finish 也可产生一个叫test的数据文件。

二、中英文和数据txt文件,如test1.txt

“你好
欢迎来到
振动论坛
vib.hit.edu.cn
1 11 111 1111
2 22 222 2222
3 33 333 3333
4 44 444 4444
5 55 555 5555”
这样的文件怎么读入数据呢?
方法有多种,现举两个比较简单实用的。


方法一:
file/import data....../next/finish
>> whos
Name           Size                   Bytes Class

data           5x4                      160 double array
textdata       4x1                      300 cell array

Grand total is 54 elements using 460 bytes

>> data

data =

           1          11         111        1111
           2          22         222        2222
           3          33         333        3333
           4          44         444        4444
           5          55         555        5555

>> textdata

textdata =

    '你好'
    '欢迎来到'
    '振动论坛'
    'vib.hit.edu.cn'


方法二:
[a1,a2,a3,a4]=textread('test1.txt','%s%s%s%s','headerlines',4)
说明:%s可以是其他形式,跟读入的数据类型有关,比如这里也可以用%n,%f等。
这里%s的个数和[a1,a2,a3,a4]对应。
>> [a1,a2,a3,a4]=textread('test1.txt','%s%s%s%s','headerlines',4)

a1 =

    '1'
    '2'
    '3'
    '4'
    '5'


a2 =

    '11'
    '22'
    '33'
    '44'
    '55'


a3 =

    '111'
    '222'
    '333'
    '444'
    '555'


a4 =

    '1111'
    '2222'
    '3333'
    '4444'
    '5555'
因以字符串的形式读入,所以有''。
————————————————————————————————

三、中文 数据 英文 混乱txt文件如test.txt

你好
1 11 111 1111
欢迎来到
2 22 222 2222
振动论坛
3 33 333 3333
vib.hit.edu.cn
4 44 444 4444
5 55 555 5555

说明:这种内容格式的文件用上面的方法是不行的。

fidin=fopen('test.txt');                               % 打开test2.txt文件            
fidout=fopen('mkmatlab.txt','w');                       % 创建MKMATLAB.txt文件
while ~feof(fidin)                                      % 判断是否为文件末尾               
    tline=fgetl(fidin);                                 % 从文件读行   
    if double(tline(1))>=48&&double(tline(1))<=57       % 判断首字符是否是数值
       fprintf(fidout,'%s\n\n',tline);                  % 如果是数字行,把此行数据写入文件MKMATLAB.txt
       continue                                         % 如果是非数字继续下一次循环
    end
end
fclose(fidout);
MK=importdata('MKMATLAB.txt');      % 将生成的MKMATLAB.txt文件导入工作空间,变量名为MK,实际上它不显示出


>> MK

MK =

           1          11         111        1111
           2          22         222        2222
           3          33         333        3333
           4          44         444        4444
           5          55         555        5555
做一只勤奋的小懒虫
2楼2015-10-18 11:01:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 085600材料与化工,求调剂 +14 won_qii 2026-04-07 14/700 2026-04-13 22:21 by pies112
[考研] 300分求调剂 (085501机械专硕,本科扬大) +8 xu@841019 2026-04-11 9/450 2026-04-13 21:36 by xu@841019
[考研] 0854调剂 +10 长弓傲 2026-04-12 13/650 2026-04-13 17:32 by 长弓傲
[考研] 一志愿郑州大学 22408 305分求调剂 +5 安小满zzz 2026-04-08 5/250 2026-04-12 00:41 by 蓝云思雨
[考研] 332求调剂 +14 蕉蕉123 2026-04-10 14/700 2026-04-12 00:27 by 蓝云思雨
[考研] 296求调剂 +8 汪!?! 2026-04-09 8/400 2026-04-11 21:02 by 逆水乘风
[考研] 070300化学279求调剂 +19 哈哈哈^_^ 2026-04-08 20/1000 2026-04-11 20:43 by stoner78
[考研] 本人女孩 +7 吼吼, 2026-04-10 9/450 2026-04-11 14:45 by ACS Nano——
[考研] 087100初试311求调剂 +4 任雅琴 2026-04-09 4/200 2026-04-11 10:33 by zhq0425
[考研] 工科273调剂 +6 X1999 2026-04-09 7/350 2026-04-11 10:23 by zhq0425
[考研] 346,工科0854求调剂,专硕 +7 moser233 2026-04-10 8/400 2026-04-11 08:52 by 猪会飞
[考研] 309求调剂 +14 wdhw 2026-04-10 15/750 2026-04-10 21:06 by zhouxiaoyu
[考研] 22408 366分,本科211,一志愿西工大 +4 Rubt 2026-04-09 4/200 2026-04-10 19:51 by chemisry
[考研] 311求调剂 +6 surte 2026-04-08 13/650 2026-04-09 14:00 by surte
[考研] 一志愿211,化学学硕,310分,本科重点双非,求调剂 +10 努力奋斗112 2026-04-07 10/500 2026-04-08 15:01 by screening
[考研] 277、学硕,求调剂 数一104, +11 瓶子PZ 2026-04-07 12/600 2026-04-07 23:30 by 一只好果子?
[考研] 323求调剂 +3 林zlu 2026-04-07 4/200 2026-04-07 23:21 by lbsjt
[考研] 计算机11408 287 求调剂 +3 LiLe5 2026-04-07 3/150 2026-04-07 23:15 by shanqishi
[考研] 318求调剂 +5 李青山山山 2026-04-07 5/250 2026-04-07 18:24 by 蓝云思雨
[考研] 软工学硕299求调剂 +6 useryy 2026-04-07 6/300 2026-04-07 09:50 by vgtyfty
信息提示
请填处理意见