given the question: Determine z = 2x^3 + 3y^2 + 5, when x and y vary from -4 to 4 with a spacing of 1.
solution: x = linspace(-4,4,9);
y = linspace(-4,4,9);
z = 2*x^3+3*y^2+5
Question: why is the "n" value for the linspace of x and y = 9 and not 1?

 采纳的回答

Walter Roberson
Walter Roberson 2019-12-4

1 个投票

The parameters of linspace are
  1. starting value
  2. ending value
  3. total number of values to use. In the below discussion I will refer to this as n
The output values are constructed so that the starting value and ending value are used exactly, and the (n-2) intermediate values are spaced approximately (ending - starting)/(n-1) apart .
So with -4, -4, 9, the (9-2)=7 intermediate values are spaced (4-(-4))/(9-1) = 8/8 = 1 apart, so -4 (used exactly), then -4+1*1 = -3, -4+1*2 = -2, -4+1*3 = -1, -4+1*4 = 0, -4+1*5 = +1, -4+1*6 = +2, -4+1*7 = +3, then +4 (used exactly).
This is not exactly the code that is used; the exact code has some subtle differences in the last few bits due to floating point round-off in how it is really calculated.

更多回答(1 个)

galaxy
galaxy 2019-12-4

0 个投票

n = 9 when user want to generate integer cases of x in [-4, 4]
if n = 1, so x alway = 4, it is no meaning

类别

在 帮助中心 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by