Ron:
I have given your questions some thought because the bandwidth B in IBIS
Version 2.1 and in BIRD29.1 are not explicitly limited. I plan to issue
BIRD29.2 to put in the limits explicitly.
With respect to the case where there is no circle-back, there is an implicit
limit by construction that B < N. The parser issues an error if B >= N.
When B = N - 1 the Banded-matrix entries are the same as the Full-matrix
entries.
When circle-back occurs, we have a case where the Banded-matrix can have
redundant terms and actually contain more entries than the Full-matrix
specification. Your example illustrates such a case. Your example (when
corrected) would have 12 entries, but the Full-matrix specification would
have 10 entries. Since redundant entries create ambiguity in the data base,
I think that they should be flagged as an error. All other forms of the
matrix specification avoid redundant entries by definition.
The test to avoid redundant entries is:
IF the Banded-matrix is a circle-back banded matrix AND
B > int((N - 1) / 2)
THEN issue an error
In your example, N = 4, and B = 2. An error should be issued since
2 > 1. In this way, you do not need to test to see entries 31 = 13 and
24 = 42. We should not allow the opportunity to specify twice the same
value.
So, with respect to your specific questions,
[1] Your are correct - row 4 is in error because row 3 determined that
this is a circle-back banded matrix and row 4 does not contain B+1 entries.
[2] Rather than checking for individual values, also issue an Error
based on the B > int((N - 1) /2) test above. The message can be of the
form ... Bandwidth > (calculate the limit value) not permitted when
entering circle-back coupling form of Banded_matrices. This could be
a row 3 error since it may be ambiguous what form was really intended.
[3] The alternative style of coupling without circle-back is equally valid,
so no warning should be issued.
Bob Ross,
Interconnectix, Inc.
> Date: 03 Jul 95 23:22:14 EDT
> From: "Ronald M. Neville" <75123.3477@compuserve.com>
> To: Bob Ross <bob@icx.com>
> Cc: Paul Munsey <73053.721@compuserve.com>
> Subject: BIRD29.1 questions
> Hi Bob,
> I have received a copy of BIRD29.1, handling "wrap-around" or "circle-back"
> coupling in banded matrices.
> Before I jump into implementation, an example and a few questions:
> [1] "All rows will contain B + 1 entries." (when we are describing a
> a circle-back matrix...) So, the following 4X4 matrix contains an error:
> [Inductance Matrix] Banded_matrix
> [Bandwidth] 2
> [Row] 1
> 0.01 0.12 0.37 | this row ok, "11", "12", and "13"
> [Row] 2
> 3.21 5.89 2.22 | this row ok, "22", "23", and "24"
> [Row] 3
> 2.81 4.69 3.22 | this row ok, "33", "34", and "31"
> [Row] 4
> 7.91 5.89 | this row is incomplete, "42" is missing
> Row 3, where the column exceeds the rows, is where the Parser determines that
> this matrix is a circle-back banded matrix type matrix.
> [2] In the matrix above, "13" is listed as 0.37 and "31" is listed as 3.22 .
> Should this be flagged as an error? (Is coupling commutative?)
> [3] Should an old-style, non-circleback banded matrix generate a warning from
> the parser?
> thanx, ron
Received on Wed Jul 5 13:25:57 1995
This archive was generated by hypermail 2.1.8 : Fri Jun 03 2011 - 09:52:28 PDT