Let
denote the FDTD state for one of the two subgrids at time
, as defined by Eq.(E.10). The other subgrid is handled
identically and will not be considered explicitly. In fact, the other
subgrid can be dropped altogether to obtain a *half-rate,
staggered grid* scheme [55,148]. However, boundary
conditions and input signals will couple the subgrids, in general. To
land on the same subgrid after a state update, it is necessary to
advance time by two samples instead of one. The state-space model for
one subgrid of the FDTD model of the ideal string may then be written
as

To avoid the issue of boundary conditions for now, we will continue working with the infinitely long string. As a result, the state vector denotes a point in a space of countably infinite dimensionality. A proper treatment of this case would be in terms of operator theory [328]. However, matrix notation is also clear and will be used below. Boundary conditions are taken up in §E.4.3.

When there is a general input signal vector , it is necessary to augment the input matrix to accomodate contributions over both time steps. This is because inputs to positions at time affect position at time . Henceforth, we assume and have been augmented in this way. Thus, if there are input signals , , driving the full string state through weights , , the vector is of dimension :

When there is only one physical input, as is typically assumed for plucked, struck, and bowed strings, then and is . The matrix weights these inputs before they are added to the state vector for time , and its entries are derived in terms of the coefficients below.

forms the output signal as an arbitrary linear combination of states. To obtain the usual displacement output for the subgrid, is the matrix formed from the identity matrix by deleting every other row, thereby retaining all displacement samples at time and discarding all displacement samples at time in the state vector :

The state transition matrix may be obtained by first performing a one-step time update,

and then expanding the two terms in terms of the state at time :

The intra-grid state update for even is then given by

For odd , the update in Eq.(E.25) is used. Thus, every other row of , for time , consists of the vector preceded and followed by zeros. Successive rows for time are shifted right two places. The rows for time consist of the vector aligned similarly:

From Eq.(E.26) we also see that the input matrix is given as defined in the following expression:

[How to cite this work] [Order a printed hardcopy] [Comment on this page via email]

Copyright ©

Center for Computer Research in Music and Acoustics (CCRMA), Stanford University