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

1 view (last 30 days)
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?
  1 Comment
Ujjwal Pratik
Ujjwal Pratik on 17 Apr 2020
Hi Zhenyu ,
I am facing a similar issue.
Can you share your code to show how you used "strcat" and "num2str" within a loop.?

Sign in to comment.

Accepted Answer

Vladimir Sovkov
Vladimir Sovkov on 29 Jan 2020
Use Matlab functions "strcat" and "num2str" within a loop.
  3 Comments
Ujjwal Pratik
Ujjwal Pratik on 17 Apr 2020
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 on 18 Apr 2020
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;

Sign in to comment.

More Answers (0)

Tags

Products


Release

R2016a

Community Treasure Hunt

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

Start Hunting!