This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


Checks a flow for admissibility in a Graph

MuPAD® notebooks are not recommended. Use MATLAB® live scripts instead.

MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.


Graph::admissibleFlow(G, f)


Graph::admissibleFlow(G, f) checks if the flow f is admissible in the Graph G according to its vertices and their capacities.

Graph::admissibleFlow checks whether a given flow is an admissible flow in the specified graph. A flow in a graph is a table t, where t[[i,j]] gives the number of units flowing from vertex i to vertex j. Graph::admissibleFlow returns TRUE if the flow is admissible. Otherwise FALSE is returned.

Graph::admissibleFlow does not check whether the flow is admissible, if a flow from vertex i to vertex j is allowed to pass through other vertices. See Example 2.


Example 1

In a cyclic graph with default capacities (1), the flow with one unit flowing from each vertex to its successor is certainly admissible:

G1 := Graph::createCircleGraph([v1, v2, v3, v4]):
Graph::admissibleFlow(G1, table([v1, v2] = 1,
                                [v2, v3] = 1, 
                                [v3, v4] = 1, 
                                [v4, v1] = 1))

Example 2

The flow must be specified in whole. Graph::admissibleFlow does not include “hops”, like skipping vertices in the path:

Graph::admissibleFlow(Graph::createCircleGraph([v1, v2, v3]),
                                   table([v1, v3] = 1))





The flow, specified in a table

Return Values

Either TRUE or FALSE

Was this topic helpful?