- #1

- 4

- 0

Hi,

I am having trouble understanding how this works.

I am giving the following:

y[k+2] - y[k+1] + 0.24y[k] = f[k+2] - 2f[k+1];

y[-2] = 1, y[-1] = 2;

f[k] = 0 for k < 0;

f[k] = k for k >= 0;

I would like to have a program compute the next values in the sequence, so, I need y[-2] = 1 to become y[1] = 1 and y[-1] = 2 to become y[2] = 1 (so that the array indexing works, e.g., I can access a negative location of an array).

I let k' = k + 1 so that I'd get:

y[k'+3] - y[k'+2] + 0.24y[k'+1] = f[k'+3] - 2f[k'+1];

Then I made:

f[k] = 0 for k < 0;

f[k] = k for k >= 0;

become

f[k'] = 0 for k' < 3;

f[k'] = k for k' >= 3;

and

y[-2] = 1, y[-1] = 2;

become

y[1] = 1, y[2] = 2;

So now I have:

y[k'+3] - y[k'+2] + 0.24y[k'+1] = f[k'+3] - 2f[k'+1];

f[k'] = 0 for k' < 3;

f[k'] = k for k' >= 3;

y[1] = 1, y[2] = 2;

And now when I let k = 0, k[3] gives me the value that k[0] gave me in the old equation, which is exactly what I want.

My issue is, I don't understand how, mathematically, this works. For example, I don't understand how I went from:

f[k] = 0 for k < 0;

f[k] = k for k >= 0;

to

f[k'] = 0 for k' < 3;

f[k'] = k for k' >= 3;

if k' = k + 1.

It seems as though I've shifted the equation (y[k+2] - y[k+1] + 0.24y[k] = f[k+2] - 2f[k+1];) over by 1 unit in the positive x direction; however, I've shifted the initial values (y[-2] = 1, y[-1] = 2;) and the f's restrictions (k < 0; and k >= 0) over by 3 units.

What I'm thinking is:

The original question should be:

f[k'] = 0 for k < k[0];

f[k'] = k for k' >= k[0];

y[k[0]-2] = 1, y[k[0]-1] = 2;

What would be the correct, more formal approach to achieving what I want. Also, should the original question be as I've written above?

I'm pretty sure that the equation, as it's give, only produces the 'correct' answer, when k[0] = -2.

Thank you for your time, I realise that this question is rather lengthy.

I am having trouble understanding how this works.

I am giving the following:

y[k+2] - y[k+1] + 0.24y[k] = f[k+2] - 2f[k+1];

y[-2] = 1, y[-1] = 2;

f[k] = 0 for k < 0;

f[k] = k for k >= 0;

I would like to have a program compute the next values in the sequence, so, I need y[-2] = 1 to become y[1] = 1 and y[-1] = 2 to become y[2] = 1 (so that the array indexing works, e.g., I can access a negative location of an array).

I let k' = k + 1 so that I'd get:

y[k'+3] - y[k'+2] + 0.24y[k'+1] = f[k'+3] - 2f[k'+1];

Then I made:

f[k] = 0 for k < 0;

f[k] = k for k >= 0;

become

f[k'] = 0 for k' < 3;

f[k'] = k for k' >= 3;

and

y[-2] = 1, y[-1] = 2;

become

y[1] = 1, y[2] = 2;

So now I have:

y[k'+3] - y[k'+2] + 0.24y[k'+1] = f[k'+3] - 2f[k'+1];

f[k'] = 0 for k' < 3;

f[k'] = k for k' >= 3;

y[1] = 1, y[2] = 2;

And now when I let k = 0, k[3] gives me the value that k[0] gave me in the old equation, which is exactly what I want.

My issue is, I don't understand how, mathematically, this works. For example, I don't understand how I went from:

f[k] = 0 for k < 0;

f[k] = k for k >= 0;

to

f[k'] = 0 for k' < 3;

f[k'] = k for k' >= 3;

if k' = k + 1.

It seems as though I've shifted the equation (y[k+2] - y[k+1] + 0.24y[k] = f[k+2] - 2f[k+1];) over by 1 unit in the positive x direction; however, I've shifted the initial values (y[-2] = 1, y[-1] = 2;) and the f's restrictions (k < 0; and k >= 0) over by 3 units.

What I'm thinking is:

The original question should be:

f[k'] = 0 for k < k[0];

f[k'] = k for k' >= k[0];

y[k[0]-2] = 1, y[k[0]-1] = 2;

What would be the correct, more formal approach to achieving what I want. Also, should the original question be as I've written above?

I'm pretty sure that the equation, as it's give, only produces the 'correct' answer, when k[0] = -2.

Thank you for your time, I realise that this question is rather lengthy.

Last edited: