LaTeXでトレース決定図を描く



Drawing Trace Determinant Diagram Latex



解決:

ここに画像の説明を入力してください

%ポアンカレ図:(det A、Tr A)平面の位相ポートの分類%作成者:Gernot Salzer%Douglas R. Hundley、people.whitman.edu / 〜hundledr / courses / M244 / Poincareによる図面に基づく。 pdf  documentclass [border = 1mm] {standalone}  usepackage {tikz}  usetikzlibrary {decorations.markings、arrows}  tikzset {every pin / .style = {pin edge = {= stealth、flow / .style = {decoration = {markings、mark = at position#1 with { arrow {>}}}、postaction = {decorate}}、flow / .default = 0.5}  newcommand  inlayscale {}  newcommand  inlaycaption [1] {{ sffamily  scriptsize#1}}  newcommand  newinlay [4] [0.18]%{ renewcommand  inlayscale {#1}% newsavebox#2% savebox#2%{ begin {tabular} {@ {} [メール保護] {}}#4 \ [-1ex]  inlaycaption {#3} \ [-1ex]  end {tabular}%}%}  newcommand  inlay [1] { usebox {#1}}  newcommand  Tr { mathop { mathrm {Tr}}}  newinlay  saddle {saddle}%{ begin {tikzpicture} [scale =  inlayscale]  foreach  sx in {+、-} { draw [flow](  sx4,0)-(0,0);  draw [flow](0,0)-(0、 sx4);  foreach  sy in {+、-}  foreach  a /  b /  c /  d in {2.8 / 0.3 / 0.7 / 0.6,3.9 / 0.4 / 1.3 / 1.1}  draw [flow]( sx  a、 sy  b)..コントロール( sx  c、 sy  d)および( sx  d、 sy  c)..( sx  b、 sy  a); }  end {tikzpicture}%}  newinlay  think {sink}%{ begin {tikzpicture} [scale =  inlayscale]  foreach  sx in {+、-} { draw [flow]( sx4,0) -(0,0);  draw [flow](0、 sx4)-(0,0);  foreach  sy in {+、-}  foreach  a /  b in {1 / 1,3 / 0.44}  draw [flow、domain =  sx  a:0] plot( x、{ sy  b *  x *  x}); }  end {tikzpicture}%}  newinlay  source {source}%{ begin {tikzpicture} [scale =  inlayscale]  foreach  sx in {+、-} { draw [flow](0,0)- -( sx4,0);  draw [flow](0,0)-(0、 sx4);  foreach  sy in {+、-}  foreach  a /  b in {1 / 1,3 / 0.44}  draw [flow、domain = 0: sx  a] plot( x、{ sy  b *  x *  x}); }  end {tikzpicture}%}  newinlay  stablefp {安定した固定小数点の線}%{ begin {tikzpicture} [scale =  inlayscale]  draw(-4,0)-(4,0);  foreach  s in {+、-} { draw [flow](0、 s4)-(0,0);  foreach  x in {-3、-2、-1,1,2,3}  draw [flow]( x、 s3)-( x、0); }  end {tikzpicture}%}  newinlay  unstablefp {不安定な固定小数点の線}%{ begin {tikzpicture} [scale =  inlayscale]  draw(-4,0)-(4,0);  foreach  s in {+、-} { draw [flow](0,0)-(0、 s4);  foreach  x in {-3、-2、-1,1,2,3}  draw [flow]( x、0)-( x、 s3); }  end {tikzpicture}%}  newinlay  spiralsink {spiralsink}%{ begin {tikzpicture} [scale =  inlayscale]  draw(-4,0)-(4,0);  draw(0、-4)-(0,4);  draw [samples = 100、smooth、domain = 27:7]プロット({ x r}:{0.005 *  x *  x});  draw [->]({26 r}:{0.005 * 26 * 26})-+(0.01、-0.01);  end {tikzpicture}%}  newinlay  spiralsource {spiral source}%{ begin {tikzpicture} [scale =  inlayscale]  draw(-4,0)-(4,0);  draw(0、-4)-(0,4);  draw [samples = 100、smooth、domain = 10:28] plot({- x r}:{0.005 *  x *  x});  draw [](0、-0.3)-(0、4.7)座標(+ y);  draw [line width = 1pt、->](-5,0)-(5,0)座標(+ x)​​;  draw [line width = 1pt、domain = -4:4] plot( x、{0.25 *  x *  x});  node at(+ y)[label = {[above、yshift = 0.8cm]%{ sffamily  large Poincar  'e図:$( det A、 Tr A)$平面の位相ポートの分類}}] {};  node at(+ x)​​[label = {[right、yshift = -0.5ex] $  scriptstyle  Tr A $}] {};  node at(+ y)[label = {[above] $  scriptstyle  det A $}] {};  node at(-4,4)[pin = {[above] $  scriptstyle  Delta = 0 $}] {};  node at(4,4)[pin = {[above、align = left] {%$  scriptstyle  Delta = 0 $:\ $  scriptstyle  det A =  frac {1} {4}( Tr A)^ 2 $}}] {}; %インレイ node at(0、-1.4){ inlay  saddle};  node at(0,1.2)[pin = {[draw、right、xshift = 0.3cm]  inlay  center}] {};  node at(0,0)[pin = {[draw、above left、align = center、xshift = -0.3cm]% inlaycaption {uniform} \ [-1ex]  inlaycaption {motion}}] {};  node at(-4,1){ inlay  think};  node at(4,1){ inlay  source};  node at(-3,0)[pin = {[draw、below、yshift = -1cm]  inlay  stablefp}] {};  node at(3,0)[pin = {[draw、below、yshift = -1cm]  inlay  unstablefp}] {};  node at(-1.8,3.7){ inlay  spiralsink};  node at(1.8,3.7){ inlay  spiralsource};  node at(-3.5、{0.25 * 3.5 * 3.5})[pin = {[draw、left、xshift = -1.15cm、yshift = -0.3cm]  inlay  degensink}] {};  node at(3.5、{0.25 * 3.5 * 3.5})[pin = {[draw、right、xshift = 0.9cm、yshift = -0.3cm]  inlay  degensource}] {};  end {tikzpicture}  end {document} 

彼の最終的な勝利の答えを投稿する前に、gernotはいくつかの答えを投稿しました。それぞれが最終的な絵の単一のグラフィックコンポーネントを表しています。最終的な回答を投稿すると、彼はコンポーネントの回答を削除しました。



この回答のために、私はそれらの部分を持ち上げました-gernotの[削除されたので]コンポーネントとOPの質問からの部分は、すべてのコンポーネントが揃ったら、使用できることを示していますおそらく、ベースグラフにそれらをオーバーレイするための stackinset。

彼のコンポーネントには、次のMWEで次のように識別されるtikzパーツ螺旋、 spiralB、 degensink、 degensource、 nondegensink、および nondegensource、



 documentclass [10pt] {article}  usepackage {pgf、tikz}  usetikzlibrary {arrows}  usepackage {mathrsfs}  usepackage {amssymb、fancyhdr、txfonts、pxfonts}  pagestyle {empty}  usetikzlibrary {decorations.markings}  usepackage {stackengine}  renewcommand  stacktype {L}  setstackgap {L} {8pt}  begin {document}  savestack  mygraph {% begin {tikzpicture} [%line cap = round、line join = round、> = triangle 45 、x = 1.0cm、y = 1.0cm%]% clip(-5.8、-3.58)長方形(5.56,5.64);  draw [line width = 1.2pt](0.、4.68)-(0。、-0.74);  draw [line width = 1.2pt](-4。、0。)-(4.3,0。);  draw [thick、domain = -2:2] plot( x、{ x *  x});  draw(3.62、-0.12)node [anchor = north west] {$  mathrm {Tr} 、A $};  draw(-。4,5.1)node [anchor = north west] {$  scriptstyle  det A $};  draw(-2.35,4.7)node [anchor = north west] {% stackunder {$  scriptstyle  Delta = 0 $} {$  downarrow $}};  draw(1.08,5.1)node [anchor = north west] { ensurestackMath { stackunder [11pt] {% Longstack [l] { scriptstyle  Delta = 0: scriptstyle  det A =  frac {1} { 4}(% mathrm {Tr} A)^ 2}} { downarrow}}};  draw(1。、-1。)-(-1。、-3。);  draw(-1。、-1。)-(1。、-3。);  draw [dash pattern = on 2pt off 2pt](-1。、-2。)-(1。、-2。);  draw [dash pattern = on 2pt off 2pt](0。、-1。)-(0。、-3。);  end {tikzpicture}%}  savestack  spiralA {% begin {tikzpicture} [decoration = {markings、mark = at position 0.1 with { arrow {stealth}}}、scale = 0.5]  draw(-4,0 )-(4,0);  draw(0、-4)-(0,4);  draw [postaction = {decorate}、domain = 27:7、variable =  t、smooth、samples = 100] plot({ t r}:{0.005 *  t *  t});  end {tikzpicture}%}  savestack  spiralB {% begin {tikzpicture} [decoration = {markings、mark = at position 0.99 with { arrow {stealth}}}、scale = 0.5]  draw(-4,0 )-(4,0);  draw(0、-4)-(0,4);  draw [postaction = {decorate}、domain = 10:28.5、variable =  t、smooth、samples = 100] plot({- t r}:{0.005 *  t *  t});  end {tikzpicture}}  savestack  degensink {% begin {tikzpicture} [decoration = {markings、mark = at position 0.5 with { arrow {stealth}}}、scale = 0.5]  draw(0、-4) -(0,4);  draw [postaction = {decorate}](-4,0)-(0,0);  draw [postaction = {decorate}](4,0)-(0,0);  draw [postaction = {decorate}](-3.5,3.5)..コントロール(4,1.5)および(4,1)..(0,0);  draw [postaction = {decorate}](3.5、-3.5)..コントロール(-4、-1.5)および(-4、-1)..(0,0);  draw [postaction = {decorate}](-3.5,2.5)..コントロール(2,1)および(2,0.8)..(0,0);  draw [postaction = {decorate}](3.5、-2.5)..コントロール(-2、-1)および(-2、-0.8)..(0,0);  end {tikzpicture}%}  savestack  degensource {% begin {tikzpicture} [decoration = {markings、mark = at position 0.5 with { arrow {stealth}}}、scale = 0.5]  draw(0、-4 )-(0,4);  draw [postaction = {decorate}](0,0)-(-4,0);  draw [postaction = {decorate}](0,0)-(4,0);  draw [postaction = {decorate}](0,0)..コントロール(4,1.5)および(4,1)..(-3.5,3.5);  draw [postaction = {decorate}](0,0)..コントロール(-4、-1.5)および(-4、-1)..(3.5、-3.5);  draw [postaction = {decorate}](0,0)..コントロール(2,1)および(2,0.8)..(-3.5,2.5);  draw [postaction = {decorate}](0,0)..コントロール(-2、-1)および(-2、-0.8)..(3.5、-2.5);  end {tikzpicture}%}  savestack  nondegensink {% begin {tikzpicture} [decoration = {markings、mark = at position 0.5 with { arrow {stealth}}}、scale = 0.5、plotsettings / .style = {postaction = {decorate}}]  draw [postaction = {decorate}](0、-4)-(0,0);  draw [postaction = {decorate}](0,4)-(0,0);  draw [postaction = {decorate}](-4,0)-(0,0);  draw [postaction = {decorate}](4,0)-(0,0);  draw [plotsettings、domain = -2:0] plot( x、{ x *  x});  draw [plotsettings、domain = 0:2] plot( x、{ x *  x});  draw [plotsettings、domain = -2:0] plot( x、{- x *  x});  draw [plotsettings、domain = 0:2] plot( x、{- x *  x});  draw [plotsettings、domain = -3:0] plot( x、{0.44 *  x *  x});  draw [plotsettings、domain = 0:3] plot( x、{0.44 *  x *  x});  draw [plotsettings、domain = -3:0] plot( x、{-0.44 *  x *  x});  draw [plotsettings、domain = 0:3] plot( x、{-0.44 *  x *  x});  end {tikzpicture}%}  savestack  nondegensource {% begin {tikzpicture} [decoration = {markings、mark = at position 0.5 with { arrow {stealth}}}、scale = 0.5、plotsettings / .style = {postaction = {decorate}}]  draw [postaction = {decorate}](0,0)-(-4,0);  draw [postaction = {decorate}](0,0)-(4,0);  draw [postaction = {decorate}](0,0)-(0、-4);  draw [postaction = {decorate}](0,0)-(0,4);  draw [plotsettings、domain = 0:-2] plot( x、{ x *  x});  draw [plotsettings、domain = 2:0] plot( x、{ x *  x});  draw [plotsettings、domain = 0:-2] plot( x、{- x *  x});  draw [plotsettings、domain = 2:0] plot( x、{- x *  x});  draw [plotsettings、domain = 0:-3] plot( x、{0.44 *  x *  x});  draw [plotsettings、domain = 3:0] plot( x、{0.44 *  x *  x});  draw [plotsettings、domain = 0:-3] plot( x、{-0.44 *  x *  x});  draw [plotsettings、domain = 3:0] plot( x、{-0.44 *  x *  x});  end {tikzpicture}%}  stackinset {c} {-55pt} {c} {2pt} { stackunder [24pt] {$  vcenter { hbox { scalebox {.3} {% nondegensink}}} $ } { scriptsize  Longunderstack [l] {sink}}%} {% stackinset {c} {60pt} {c} {2pt} { stackunder [24pt] {$  vcenter { hbox { scalebox {.3 } {% nondegensource}}} $} { scriptsize  Longunderstack [l] {source}}%} {% stackinset {c} {-71pt} {c} {56pt} { stackunder [24pt] {$  vcenter { hbox { scalebox {.3} {% fbox { degensink}}}} $} { scriptsize  Longunderstack [l] {degenerateシンク}}%$ ! rightarrow $} {% stackinset { c} {78pt} {c} {56pt} {$  leftarrow !$% stackunder [24pt] {$  vcenter { hbox { scalebox {.3} {% fbox { degensink}}}} $ } { scriptsize  Longunderstack [r] {degenerate source}}%} {% stackinset {c} {-20pt} {c} {62pt} { stackunder { scalebox {.35} { spiralA}} {%  scriptsizeスパイラルシンク}} {% stackinset {c} {27pt} {c} {62pt} { stackunder { scalebox {.35} { spiralB}} {% scriptsizespiral source}} {% mygraph% }}}}}}  end {document}

ここに画像の説明を入力してください