| OCR Text |
Show 74 Foreach Iterating on a Four-Node Capacitance Split When two paths interact there are two pair of nodes that need to have the distributed capacitance split among them. The capacitance is split four ways, given the edges and the capacitance to split. This 'foreach' iterator takes as arguments the edges and the capacitance between them, finds the nodes and performs the split based on distance and always returns four times. It is the most complex 'foreach' statement and has the following form: "foreach (cap_split (<edge_1>,<edge_2>, <cap_value>) <node_1>,< node_2>, <split_value>)." This takes the center of the adjacency given two edges and returns four times to provide a correct match of node pairs and split capacitance. The user provides the capacitance from his unique formula, and the iterator divides it correctly. As a side effect the iterator totals up the capacitance on the nodes without a database. When it divides capacitance between nodes, it also accumulates the totals on each node. Simply running this iterator on the pairs of centerline segments of two paths correctly accumulates the capacitance on the nodes between them. Foreach Iterating on a Four-Node Capacitance Cross An equivalent situation to the last one occurs when two paths cross. The statement to split the capacitance is identical, but it uses the key word 'cap_cross' instead, with the form: "foreach (cap_cross (<edge_1>, <edge_2>, <cap_value>) <node_1>, < node_2>, <split_value>)." The four way split is still provided, but the center is computed from the intersection of the two segments. |