How can I write a loop, which can make the parameter "V" change with a cyclic variable "i"?

1 次查看(过去 30 天)
My code is:
netlist = ['D:\1\MATLAB\mine.txt'];
code =['D:\\1\\MATLAB\\mine.asc\r\n'...
'R1 N001 0 {R}\r\n'...
'C1 N001 0 {C}\r\n'...
'V1 N001 0 {V}\r\n'...
'.tran .1\r\n'...
'.params R = 1000 C = 0.001 V = 15\r\n'...
'.backanno\r\n'...
'.end\r\n'];
fid = fopen(netlist,'w+');
fprintf(fid,code);
fid = fclose(fid);
I have to make the parameter "V" change with a cyclic variable "i". Is there any way to do that?

采纳的回答

Vladimir Sovkov
Vladimir Sovkov 2020-1-29
Use Matlab functions "strcat" and "num2str" within a loop.
  3 个评论
Ujjwal Pratik
Ujjwal Pratik 2020-4-17
I am facing a similar issue.
Can you share your code to show how you used "strcat" and "num2str" within a loop.?
Zhenyu Wu
Zhenyu Wu 2020-4-18
Of course. Here is my code.
netlist = ['D:\1\MATLAB\mine.net'];
code1 =['D:\\1\\MATLAB\\mine.asc\r\n'...
'R1 N001 0 {R}\r\n'...
'C1 N001 0 {C}\r\n'...
'V1 N001 0 SINE(0 {ampl} {freq})\r\n'...
'.tran .1\r\n'];
code2 =['.params R = 1000 C = 0.001 V = 15\r\n'];
code3 =['.backanno\r\n'...
'.end\r\n'];
for i=1:10
v=15*i;
vv=num2str(v);
code2=strcat('.params R = 1000 C = 0.001 V = ',vv);
fid = fopen(netlist,'w+');
fprintf(fid,code1);
fprintf(fid,code2);
fprintf(fid,code3);
fid = fclose(fid);
end;

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Language Support 的更多信息

标签

产品


版本

R2016a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by