さて何がわかるかしらね。
地図を見ながら、それぞれの濃度 (u,v) の領域で、濃度が変化する方向を矢印で書いてみる。変化の方向は先に作った表を見ながらね。

こうなるかしら。線の上からスタートしたときどちらに変化するかも書いてみる。
①の領域にある濃度の組合わせから反応を始めたとしましょう。すると左上のほうに変化していく。そして、青線にぶつかるわね。すると左に動き、②の領域に入る。②の領域では左下に動くので、場所によるけど、黄色の線にぶつかるわ。そこでは下に動くので、③の領域に入る。③の領域では、右下へ動く。すると緑線にぶつかって、緑線では右に動くので、(u, v) = (1, 0) の黒点にぶつかるまで動くはずね。この点は安定点なので、来たらもう濃度は変化しなくなる。②の領域の、右下で始めると、ちょっと違うわね。まず左下に動いて、緑線にぶつかる、そして左へ動いて、やっぱり (u, v) = (1, 0)で止っちゃうわ。これ以外のケースはなさそうね。つまり、どこから始めても、最終的に (1, 0)になって、反応は終りってことか。
本当かどうか、ちょっと試しに濃度変化の軌跡を見てみましょう。例えば、(u, v) = (0.5, 0.5) から始めて、f, g を計算しながら、ちょっとずつ濃度を更新していく。その濃度変化を点列として結ぶと軌跡が得られるはずよ。

赤線が軌跡。
Mathematica
Module[{feed = 0.03, kill = 0.063, start = {0.5, 0.5},
f, g, next, trace},
f[u_, v_] := u + dt (-u v^2 + feed (1 - u));
g[u_, v_] := v + dt (u v^2 - (feed + kill) v);
next[{u1_, v1_},
dt1_] := {f[u, v], g[u, v]} /. {u -> u1, v -> v1, dt -> dt1};
trace = NestList[next[#, 0.5] &, start, 500];
Plot[{Sqrt[feed - feed u]/Sqrt[u], (feed + kill)/u, 0}, {u, 0, 1.5},
AxesLabel -> {"u", "v"}, BaseStyle -> {FontSize -> 16},
ImageSize -> 300,
PlotLegends -> {"f=0", "g=0", "g=0"},
PlotStyle -> (ColorData[97, "ColorList"][[#]] & /@ {2, 1,
3})(*Plot3Dと色を合わせる*),
Epilog -> {Text["F=" <> ToString@feed <> "\nk=" <> ToString[kill],
Scaled[{0.75, 0.75}], Alignment -> Left],
PointSize[Medium], Point[{1, 0}], Red, Point@start, Line@trace},
PlotRange -> {{-0.1, 1.2}, {-0.1, 1.2}}, AspectRatio -> 1
]
]
やっぱりそうね、ぐるっと動いて、最後は黒丸デッドエンド。ふふふ。
ちょっとちょっと、サーズディちゃん、サンディちゃん!
どおしたの、さっきからぶつぶつと独り言。
試して欲しいことがあるの。ここにあるパラメータの値を入れて、2人の見ている反応を動かしてみて欲しいの。Uの濃度が0にちかいときは青、1に近いときは赤で、間の濃度は白っぽくね。最後は全体が真っ赤になって終わるはずよ。初期値は適当に入れといて。
(かちゃかちゃ←コンピューターに打ち込む音)ほいさ。
ディスプレイ (F = 0.03, k = 0.063)

!