assign variable name to Function Output Variables
Ältere Kommentare anzeigen
Hi All
when using a Function it is possible to assign a variable name to the input
e.g
wave = Uph
[.........] = waveform(wave)
Is it possible to use the same variable in the output definition
[wave_rms]=waveform(wave)
so the output variable stored in the workspace is Uph_rms and not wave_rms?
Thanks
Adrian
Antworten (1)
M
am 8 Nov. 2019
0 Stimmen
Why don't you just change [wave_rms]=waveform(wave) into [Uph_rms]=waveform(wave) ?
5 Kommentare
Guillaume
am 8 Nov. 2019
And note that the brackets are not necessary
wave_rms = waveform(wave);
uph_rms = waveform(uph);
The variable to which you assign the output of a function to call does not have to match the name that is defined in the function signature. This is exactly how it works for built-in functions, it's no different for the function you write.
Guillaume
am 8 Nov. 2019
Adrian's comment originally posted as an answer moved here:
I have 20 waveforms to process and i dont want to hard code each function
e.g
wave=Uph
[wave_rms]=waveform(wave)
then
wave = Vph
[wave_rms]=waveform(wave)
my function has 15 output definitions so would take a long time to hard code.
Guillaume
am 8 Nov. 2019
These 20 waveforms are they 20 different variables? or are they more sensibly stored in a container of some sort (cell array, matrix, table,...)?
Adrian
am 8 Nov. 2019
Guillaume
am 8 Nov. 2019
They are 20 different variables
That's where you went wrong and what we have to fix. How were these 20 different variables created in the first place.
Kategorien
Mehr zu Logical finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!