Scilab function
Last update : September 1996

split_edge - splits an edge by inserting a node

### Calling Sequence

  `g1 = split_edge(i,j,g,name)`

### Parameters

- `i`: integer, number of start node of edge
- `j`: integer, number of end node of edge
- `g`: graph list
- `name`: optional name of the added node
- `g1`: graph list of the new graph

### Description

`split_edge` returns the graph `g1`, the edge from node number `i` to node number `j` being splitted: a new node is created and located at the middle point between the 2 previous nodes. This new node is linked with the 2 nodes `i` and `j`. If `name` is given, it is the name of the new node, otherwise the number of nodes plus 1 is taken as the name of the new node.

### Examples

    ta=[1 1 2 2 2 3 4 5 5 7 8 8 9 10 10 10 10 10 11 12 13 13 13 14 15 16 16 17 17];
    he=[2 10 3 5 7 4 2 4 6 8 6 9 7 7 11 13 13 15 12 13 9 10 14 11 16 1 17 14 15];
    g=make_graph('foo',1,17,ta,he);
    g('node_x')=[283 163 63 57 164 164 273 271 339 384 504 513 439 623 631 757 642];
    g('node_y')=[59 133 223 318 227 319 221 324 432 141 209 319 428 443 187 151 301];
    show_graph(g);
    gt=split_edge(1,2,g);
    show_graph(gt,'new');

### See Also

`add_edge`, `add_node`, `delete_arcs`, `delete_nodes`,