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

1 visualizzazione (ultimi 30 giorni)
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 Commento
Ujjwal Pratik
Ujjwal Pratik il 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.?

Accedi per commentare.

Risposta accettata

Vladimir Sovkov
Vladimir Sovkov il 29 Gen 2020
Use Matlab functions "strcat" and "num2str" within a loop.
  3 Commenti
Ujjwal Pratik
Ujjwal Pratik il 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 il 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;

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Tag

Prodotti


Release

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by