Linspace is changing my function values

7 Ansichten (letzte 30 Tage)
Taylor Shead
Taylor Shead am 28 Apr. 2019
Bearbeitet: Stephen23 am 29 Apr. 2019
Hello,
Maybe I do not understand fully what linspace does but when I change my from:
t = linspace(0,250)
to
t = linspace(0,1000)
my output values change. One of my functions (with the most noticeable trend) is:
Pe_po = eta*R_po*m_po*1000*.5.^(t/HL_po);
which is a plot of the electrical power decay in thermoelectric generator using a Polonium-210 radioisotope source. The output increases about 4 fold while the other graphs seem to remain the same but that may be due to their longer half-life.
What I am trying to do is increase the x-axis plotting but this is what I get instead:
t = linspace(0,250)
Capturep1.PNG
t = linspace(0,1000)
Capturep1000.PNG
I am using the Student Version and have some limited Matlab experience (probably less than I should).
Am I using linspace worng or do I need an entirely differen function to graph with?
  1 Kommentar
Stephen23
Stephen23 am 29 Apr. 2019
Bearbeitet: Stephen23 am 29 Apr. 2019
@Taylor Shead: please edit your question and show us your plot command.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Star Strider
Star Strider am 28 Apr. 2019
The linspace function by default produces a vector of 100 elements, so it increments the elements proportionately.
The element intervals are:
ElInt = (maxv - minv)/(len-1)
where ‘maxv’ is the maximum value desired, ‘minv’ is the minimum (starting) value, and ‘len’ is the number of elements, in:
v = linspace(minv, maxv, len);
If you want the same element spacing in your longer vector, this works:
t = linspace(0,1000, 397);
Experiment to get the result you want.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by