Having arrows entering and leaving at different points on a single node












4














I wish to essentially remake the below image using TikZ, but with more colors and using a different language inside the boxes.



Carnot's theorem visually



I've tried the following:



documentclass[tikz]{standalone}

usepackage{mathtools}
usetikzlibrary{shapes,arrows}
% Define block styles
tikzstyle{HOTRES} = [rectangle, draw, fill=red!20,
text width=20em, text centered, rounded corners, minimum height=1.5em]
tikzstyle{COLDRES} = [rectangle, draw, fill=blue!20,
text width=20em, text centered, rounded corners, minimum height=1.5em]
tikzstyle{line} = [draw, -latex']
tikzstyle{cloud} = [draw, ellipse,fill=yellow!20, node distance=3cm,
minimum height=4em]

begin{document}
begin{tikzpicture}

% Reservoirs
node [HOTRES] (HOT) at (0,2) {Kuuma};
node [COLDRES] (COLD) at (0,-2) {Kylmä};

% Heat transfer
node [cloud] (HOT->COLD) at (-2,0) {(Q)};
node [cloud] (COLD->HOT) at (2,0) {(Q)};

% Lines
draw [line] (HOT) -- (HOT->COLD) -- (COLD);
draw [line] (COLD) -- (COLD->HOT) -- (HOT);

end{tikzpicture}
end{document}


which produces this picture:



enter image description here



I just don't know how to achieve the effect of having arrows (that can just be simple TikZ arrows) leaving and entering the same node at different points, so that all of the arrows in the last picture were vertical. How could I achieve this effect with relative ease?










share|improve this question
























  • Just a few seconds.
    – TheSodesa
    Dec 31 '18 at 10:52










  • The requested edits have been made.
    – TheSodesa
    Dec 31 '18 at 11:06
















4














I wish to essentially remake the below image using TikZ, but with more colors and using a different language inside the boxes.



Carnot's theorem visually



I've tried the following:



documentclass[tikz]{standalone}

usepackage{mathtools}
usetikzlibrary{shapes,arrows}
% Define block styles
tikzstyle{HOTRES} = [rectangle, draw, fill=red!20,
text width=20em, text centered, rounded corners, minimum height=1.5em]
tikzstyle{COLDRES} = [rectangle, draw, fill=blue!20,
text width=20em, text centered, rounded corners, minimum height=1.5em]
tikzstyle{line} = [draw, -latex']
tikzstyle{cloud} = [draw, ellipse,fill=yellow!20, node distance=3cm,
minimum height=4em]

begin{document}
begin{tikzpicture}

% Reservoirs
node [HOTRES] (HOT) at (0,2) {Kuuma};
node [COLDRES] (COLD) at (0,-2) {Kylmä};

% Heat transfer
node [cloud] (HOT->COLD) at (-2,0) {(Q)};
node [cloud] (COLD->HOT) at (2,0) {(Q)};

% Lines
draw [line] (HOT) -- (HOT->COLD) -- (COLD);
draw [line] (COLD) -- (COLD->HOT) -- (HOT);

end{tikzpicture}
end{document}


which produces this picture:



enter image description here



I just don't know how to achieve the effect of having arrows (that can just be simple TikZ arrows) leaving and entering the same node at different points, so that all of the arrows in the last picture were vertical. How could I achieve this effect with relative ease?










share|improve this question
























  • Just a few seconds.
    – TheSodesa
    Dec 31 '18 at 10:52










  • The requested edits have been made.
    – TheSodesa
    Dec 31 '18 at 11:06














4












4








4


0





I wish to essentially remake the below image using TikZ, but with more colors and using a different language inside the boxes.



Carnot's theorem visually



I've tried the following:



documentclass[tikz]{standalone}

usepackage{mathtools}
usetikzlibrary{shapes,arrows}
% Define block styles
tikzstyle{HOTRES} = [rectangle, draw, fill=red!20,
text width=20em, text centered, rounded corners, minimum height=1.5em]
tikzstyle{COLDRES} = [rectangle, draw, fill=blue!20,
text width=20em, text centered, rounded corners, minimum height=1.5em]
tikzstyle{line} = [draw, -latex']
tikzstyle{cloud} = [draw, ellipse,fill=yellow!20, node distance=3cm,
minimum height=4em]

begin{document}
begin{tikzpicture}

% Reservoirs
node [HOTRES] (HOT) at (0,2) {Kuuma};
node [COLDRES] (COLD) at (0,-2) {Kylmä};

% Heat transfer
node [cloud] (HOT->COLD) at (-2,0) {(Q)};
node [cloud] (COLD->HOT) at (2,0) {(Q)};

% Lines
draw [line] (HOT) -- (HOT->COLD) -- (COLD);
draw [line] (COLD) -- (COLD->HOT) -- (HOT);

end{tikzpicture}
end{document}


which produces this picture:



enter image description here



I just don't know how to achieve the effect of having arrows (that can just be simple TikZ arrows) leaving and entering the same node at different points, so that all of the arrows in the last picture were vertical. How could I achieve this effect with relative ease?










share|improve this question















I wish to essentially remake the below image using TikZ, but with more colors and using a different language inside the boxes.



Carnot's theorem visually



I've tried the following:



documentclass[tikz]{standalone}

usepackage{mathtools}
usetikzlibrary{shapes,arrows}
% Define block styles
tikzstyle{HOTRES} = [rectangle, draw, fill=red!20,
text width=20em, text centered, rounded corners, minimum height=1.5em]
tikzstyle{COLDRES} = [rectangle, draw, fill=blue!20,
text width=20em, text centered, rounded corners, minimum height=1.5em]
tikzstyle{line} = [draw, -latex']
tikzstyle{cloud} = [draw, ellipse,fill=yellow!20, node distance=3cm,
minimum height=4em]

begin{document}
begin{tikzpicture}

% Reservoirs
node [HOTRES] (HOT) at (0,2) {Kuuma};
node [COLDRES] (COLD) at (0,-2) {Kylmä};

% Heat transfer
node [cloud] (HOT->COLD) at (-2,0) {(Q)};
node [cloud] (COLD->HOT) at (2,0) {(Q)};

% Lines
draw [line] (HOT) -- (HOT->COLD) -- (COLD);
draw [line] (COLD) -- (COLD->HOT) -- (HOT);

end{tikzpicture}
end{document}


which produces this picture:



enter image description here



I just don't know how to achieve the effect of having arrows (that can just be simple TikZ arrows) leaving and entering the same node at different points, so that all of the arrows in the last picture were vertical. How could I achieve this effect with relative ease?







tikz-pgf tikz-arrows tikz-node






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Dec 31 '18 at 10:59

























asked Dec 31 '18 at 10:31









TheSodesa

1148




1148












  • Just a few seconds.
    – TheSodesa
    Dec 31 '18 at 10:52










  • The requested edits have been made.
    – TheSodesa
    Dec 31 '18 at 11:06


















  • Just a few seconds.
    – TheSodesa
    Dec 31 '18 at 10:52










  • The requested edits have been made.
    – TheSodesa
    Dec 31 '18 at 11:06
















Just a few seconds.
– TheSodesa
Dec 31 '18 at 10:52




Just a few seconds.
– TheSodesa
Dec 31 '18 at 10:52












The requested edits have been made.
– TheSodesa
Dec 31 '18 at 11:06




The requested edits have been made.
– TheSodesa
Dec 31 '18 at 11:06










2 Answers
2






active

oldest

votes


















7














It is very simple, if you use the coordinate (nodea -| nodeb) you have the y coordinate of nodea and the x coordinate of nodeb.



Off-topic: see also Should tikzset or tikzstyle be used to define TikZ styles?.



documentclass[tikz]{standalone}

usepackage{mathtools}
usetikzlibrary{shapes,arrows.meta}
% Define block styles
tikzset{
HOTRES/.style={
rectangle, draw, fill=red!20,
text width=20em, text centered, rounded corners, minimum height=1.5em
},
COLDRES/.style ={
rectangle, draw, fill=blue!20, text width=20em, text centered, rounded corners, minimum height=1.5em
},
line/.style = {draw, -Latex},
cloud/.style = {
draw, ellipse,fill=yellow!20, node distance=3cm,
minimum height=4em
}
}

begin{document}
begin{tikzpicture}

% Reservoirs
node [HOTRES] (HOT) at (0,2) {Kuuma};
node [COLDRES] (COLD) at (0,-2) {Kylmä};

% Heat transfer
node [cloud] (HOT->COLD) at (-2,0) {(Q)};
node [cloud] (COLD->HOT) at (2,0) {(Q)};

% Lines
draw (HOT.south -| HOT->COLD) -- (HOT->COLD.north);
draw [line] (HOT->COLD) -- (COLD.north -| HOT->COLD);
draw (COLD.north -| COLD->HOT) -- (COLD->HOT);
draw [line] (COLD->HOT) -- (HOT.south -| COLD->HOT);
end{tikzpicture}
end{document}


enter image description here






share|improve this answer





























    7














    documentclass[border = 5pt]{standalone}

    usepackage{tikz}
    usetikzlibrary{calc}
    usetikzlibrary{positioning}
    usetikzlibrary{shadows.blur}

    begin{document}
    begin{tikzpicture}[
    reserv/.style = {
    draw = #1, fill = #1!50, text = white,
    rounded corners = 5pt,
    minimum width = 6cm,
    minimum height = 1cm, inner sep = 1pt,
    drop shadow
    },
    proc/.style = {
    draw = #1, fill = #1!50, text = black,
    circle,
    minimum size = 1.5cm,
    drop shadow, inner sep = 1pt,
    },
    arrow/.style = {
    line width = 1mm, draw = gray!30, >=latex
    }
    ]

    node[reserv=red] (HOT) at (0, 0){$T_textrm{tiny HOT}$};
    node[proc=yellow] (M) at (-2, -3) {$textrm{eff.} = eta_M$};
    node[proc=yellow] (L) at ( 2, -3) {$textrm{eff.} = eta_L$};
    node[reserv=blue] (COLD) at (0, -6){$T_textrm{tiny COLD}$};

    draw[arrow, ->] (HOT.south -| M) -- (M) node[left, midway, black]{$Q$};
    draw[arrow, <-] (HOT.south -| L) -- (L) node[right, midway, black]{$displaystyle{frac{eta_M}{eta_L}}Q$};
    draw[arrow, <-] (COLD.north -| M) -- (M) node[left, midway, black]{$(1 - eta_M)Q$};
    draw[arrow, ->] (COLD.north -| L) -- (L) node[right, midway, black]{$eta_M Qdisplaystyle{left(frac{1}{eta_L} - 1right)}$};
    draw[arrow, ->] (M) -- (L) node[below, midway]{$eta_M Q$};

    node[left = 0.1cm of M, black, align = center] {More\efficient};
    node[right = 0.1cm of L, black, align = center] {Less\efficient};
    node[above = 1cm] at ($(M)!0.5!(L)$){$eta_M geq eta_L$};

    end{tikzpicture}
    end{document}


    enter image description here






    share|improve this answer



















    • 2




      Very nice the shadows. Peraphs, for my opinion, the T of temperature is smaller than COLD. Same for HOT.
      – Sebastiano
      Dec 31 '18 at 12:27








    • 1




      @Sebastiano Good catch, already fixed it
      – caverac
      Dec 31 '18 at 13:18











    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "85"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f468008%2fhaving-arrows-entering-and-leaving-at-different-points-on-a-single-node%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    7














    It is very simple, if you use the coordinate (nodea -| nodeb) you have the y coordinate of nodea and the x coordinate of nodeb.



    Off-topic: see also Should tikzset or tikzstyle be used to define TikZ styles?.



    documentclass[tikz]{standalone}

    usepackage{mathtools}
    usetikzlibrary{shapes,arrows.meta}
    % Define block styles
    tikzset{
    HOTRES/.style={
    rectangle, draw, fill=red!20,
    text width=20em, text centered, rounded corners, minimum height=1.5em
    },
    COLDRES/.style ={
    rectangle, draw, fill=blue!20, text width=20em, text centered, rounded corners, minimum height=1.5em
    },
    line/.style = {draw, -Latex},
    cloud/.style = {
    draw, ellipse,fill=yellow!20, node distance=3cm,
    minimum height=4em
    }
    }

    begin{document}
    begin{tikzpicture}

    % Reservoirs
    node [HOTRES] (HOT) at (0,2) {Kuuma};
    node [COLDRES] (COLD) at (0,-2) {Kylmä};

    % Heat transfer
    node [cloud] (HOT->COLD) at (-2,0) {(Q)};
    node [cloud] (COLD->HOT) at (2,0) {(Q)};

    % Lines
    draw (HOT.south -| HOT->COLD) -- (HOT->COLD.north);
    draw [line] (HOT->COLD) -- (COLD.north -| HOT->COLD);
    draw (COLD.north -| COLD->HOT) -- (COLD->HOT);
    draw [line] (COLD->HOT) -- (HOT.south -| COLD->HOT);
    end{tikzpicture}
    end{document}


    enter image description here






    share|improve this answer


























      7














      It is very simple, if you use the coordinate (nodea -| nodeb) you have the y coordinate of nodea and the x coordinate of nodeb.



      Off-topic: see also Should tikzset or tikzstyle be used to define TikZ styles?.



      documentclass[tikz]{standalone}

      usepackage{mathtools}
      usetikzlibrary{shapes,arrows.meta}
      % Define block styles
      tikzset{
      HOTRES/.style={
      rectangle, draw, fill=red!20,
      text width=20em, text centered, rounded corners, minimum height=1.5em
      },
      COLDRES/.style ={
      rectangle, draw, fill=blue!20, text width=20em, text centered, rounded corners, minimum height=1.5em
      },
      line/.style = {draw, -Latex},
      cloud/.style = {
      draw, ellipse,fill=yellow!20, node distance=3cm,
      minimum height=4em
      }
      }

      begin{document}
      begin{tikzpicture}

      % Reservoirs
      node [HOTRES] (HOT) at (0,2) {Kuuma};
      node [COLDRES] (COLD) at (0,-2) {Kylmä};

      % Heat transfer
      node [cloud] (HOT->COLD) at (-2,0) {(Q)};
      node [cloud] (COLD->HOT) at (2,0) {(Q)};

      % Lines
      draw (HOT.south -| HOT->COLD) -- (HOT->COLD.north);
      draw [line] (HOT->COLD) -- (COLD.north -| HOT->COLD);
      draw (COLD.north -| COLD->HOT) -- (COLD->HOT);
      draw [line] (COLD->HOT) -- (HOT.south -| COLD->HOT);
      end{tikzpicture}
      end{document}


      enter image description here






      share|improve this answer
























        7












        7








        7






        It is very simple, if you use the coordinate (nodea -| nodeb) you have the y coordinate of nodea and the x coordinate of nodeb.



        Off-topic: see also Should tikzset or tikzstyle be used to define TikZ styles?.



        documentclass[tikz]{standalone}

        usepackage{mathtools}
        usetikzlibrary{shapes,arrows.meta}
        % Define block styles
        tikzset{
        HOTRES/.style={
        rectangle, draw, fill=red!20,
        text width=20em, text centered, rounded corners, minimum height=1.5em
        },
        COLDRES/.style ={
        rectangle, draw, fill=blue!20, text width=20em, text centered, rounded corners, minimum height=1.5em
        },
        line/.style = {draw, -Latex},
        cloud/.style = {
        draw, ellipse,fill=yellow!20, node distance=3cm,
        minimum height=4em
        }
        }

        begin{document}
        begin{tikzpicture}

        % Reservoirs
        node [HOTRES] (HOT) at (0,2) {Kuuma};
        node [COLDRES] (COLD) at (0,-2) {Kylmä};

        % Heat transfer
        node [cloud] (HOT->COLD) at (-2,0) {(Q)};
        node [cloud] (COLD->HOT) at (2,0) {(Q)};

        % Lines
        draw (HOT.south -| HOT->COLD) -- (HOT->COLD.north);
        draw [line] (HOT->COLD) -- (COLD.north -| HOT->COLD);
        draw (COLD.north -| COLD->HOT) -- (COLD->HOT);
        draw [line] (COLD->HOT) -- (HOT.south -| COLD->HOT);
        end{tikzpicture}
        end{document}


        enter image description here






        share|improve this answer












        It is very simple, if you use the coordinate (nodea -| nodeb) you have the y coordinate of nodea and the x coordinate of nodeb.



        Off-topic: see also Should tikzset or tikzstyle be used to define TikZ styles?.



        documentclass[tikz]{standalone}

        usepackage{mathtools}
        usetikzlibrary{shapes,arrows.meta}
        % Define block styles
        tikzset{
        HOTRES/.style={
        rectangle, draw, fill=red!20,
        text width=20em, text centered, rounded corners, minimum height=1.5em
        },
        COLDRES/.style ={
        rectangle, draw, fill=blue!20, text width=20em, text centered, rounded corners, minimum height=1.5em
        },
        line/.style = {draw, -Latex},
        cloud/.style = {
        draw, ellipse,fill=yellow!20, node distance=3cm,
        minimum height=4em
        }
        }

        begin{document}
        begin{tikzpicture}

        % Reservoirs
        node [HOTRES] (HOT) at (0,2) {Kuuma};
        node [COLDRES] (COLD) at (0,-2) {Kylmä};

        % Heat transfer
        node [cloud] (HOT->COLD) at (-2,0) {(Q)};
        node [cloud] (COLD->HOT) at (2,0) {(Q)};

        % Lines
        draw (HOT.south -| HOT->COLD) -- (HOT->COLD.north);
        draw [line] (HOT->COLD) -- (COLD.north -| HOT->COLD);
        draw (COLD.north -| COLD->HOT) -- (COLD->HOT);
        draw [line] (COLD->HOT) -- (HOT.south -| COLD->HOT);
        end{tikzpicture}
        end{document}


        enter image description here







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Dec 31 '18 at 11:21









        CarLaTeX

        29.8k447127




        29.8k447127























            7














            documentclass[border = 5pt]{standalone}

            usepackage{tikz}
            usetikzlibrary{calc}
            usetikzlibrary{positioning}
            usetikzlibrary{shadows.blur}

            begin{document}
            begin{tikzpicture}[
            reserv/.style = {
            draw = #1, fill = #1!50, text = white,
            rounded corners = 5pt,
            minimum width = 6cm,
            minimum height = 1cm, inner sep = 1pt,
            drop shadow
            },
            proc/.style = {
            draw = #1, fill = #1!50, text = black,
            circle,
            minimum size = 1.5cm,
            drop shadow, inner sep = 1pt,
            },
            arrow/.style = {
            line width = 1mm, draw = gray!30, >=latex
            }
            ]

            node[reserv=red] (HOT) at (0, 0){$T_textrm{tiny HOT}$};
            node[proc=yellow] (M) at (-2, -3) {$textrm{eff.} = eta_M$};
            node[proc=yellow] (L) at ( 2, -3) {$textrm{eff.} = eta_L$};
            node[reserv=blue] (COLD) at (0, -6){$T_textrm{tiny COLD}$};

            draw[arrow, ->] (HOT.south -| M) -- (M) node[left, midway, black]{$Q$};
            draw[arrow, <-] (HOT.south -| L) -- (L) node[right, midway, black]{$displaystyle{frac{eta_M}{eta_L}}Q$};
            draw[arrow, <-] (COLD.north -| M) -- (M) node[left, midway, black]{$(1 - eta_M)Q$};
            draw[arrow, ->] (COLD.north -| L) -- (L) node[right, midway, black]{$eta_M Qdisplaystyle{left(frac{1}{eta_L} - 1right)}$};
            draw[arrow, ->] (M) -- (L) node[below, midway]{$eta_M Q$};

            node[left = 0.1cm of M, black, align = center] {More\efficient};
            node[right = 0.1cm of L, black, align = center] {Less\efficient};
            node[above = 1cm] at ($(M)!0.5!(L)$){$eta_M geq eta_L$};

            end{tikzpicture}
            end{document}


            enter image description here






            share|improve this answer



















            • 2




              Very nice the shadows. Peraphs, for my opinion, the T of temperature is smaller than COLD. Same for HOT.
              – Sebastiano
              Dec 31 '18 at 12:27








            • 1




              @Sebastiano Good catch, already fixed it
              – caverac
              Dec 31 '18 at 13:18
















            7














            documentclass[border = 5pt]{standalone}

            usepackage{tikz}
            usetikzlibrary{calc}
            usetikzlibrary{positioning}
            usetikzlibrary{shadows.blur}

            begin{document}
            begin{tikzpicture}[
            reserv/.style = {
            draw = #1, fill = #1!50, text = white,
            rounded corners = 5pt,
            minimum width = 6cm,
            minimum height = 1cm, inner sep = 1pt,
            drop shadow
            },
            proc/.style = {
            draw = #1, fill = #1!50, text = black,
            circle,
            minimum size = 1.5cm,
            drop shadow, inner sep = 1pt,
            },
            arrow/.style = {
            line width = 1mm, draw = gray!30, >=latex
            }
            ]

            node[reserv=red] (HOT) at (0, 0){$T_textrm{tiny HOT}$};
            node[proc=yellow] (M) at (-2, -3) {$textrm{eff.} = eta_M$};
            node[proc=yellow] (L) at ( 2, -3) {$textrm{eff.} = eta_L$};
            node[reserv=blue] (COLD) at (0, -6){$T_textrm{tiny COLD}$};

            draw[arrow, ->] (HOT.south -| M) -- (M) node[left, midway, black]{$Q$};
            draw[arrow, <-] (HOT.south -| L) -- (L) node[right, midway, black]{$displaystyle{frac{eta_M}{eta_L}}Q$};
            draw[arrow, <-] (COLD.north -| M) -- (M) node[left, midway, black]{$(1 - eta_M)Q$};
            draw[arrow, ->] (COLD.north -| L) -- (L) node[right, midway, black]{$eta_M Qdisplaystyle{left(frac{1}{eta_L} - 1right)}$};
            draw[arrow, ->] (M) -- (L) node[below, midway]{$eta_M Q$};

            node[left = 0.1cm of M, black, align = center] {More\efficient};
            node[right = 0.1cm of L, black, align = center] {Less\efficient};
            node[above = 1cm] at ($(M)!0.5!(L)$){$eta_M geq eta_L$};

            end{tikzpicture}
            end{document}


            enter image description here






            share|improve this answer



















            • 2




              Very nice the shadows. Peraphs, for my opinion, the T of temperature is smaller than COLD. Same for HOT.
              – Sebastiano
              Dec 31 '18 at 12:27








            • 1




              @Sebastiano Good catch, already fixed it
              – caverac
              Dec 31 '18 at 13:18














            7












            7








            7






            documentclass[border = 5pt]{standalone}

            usepackage{tikz}
            usetikzlibrary{calc}
            usetikzlibrary{positioning}
            usetikzlibrary{shadows.blur}

            begin{document}
            begin{tikzpicture}[
            reserv/.style = {
            draw = #1, fill = #1!50, text = white,
            rounded corners = 5pt,
            minimum width = 6cm,
            minimum height = 1cm, inner sep = 1pt,
            drop shadow
            },
            proc/.style = {
            draw = #1, fill = #1!50, text = black,
            circle,
            minimum size = 1.5cm,
            drop shadow, inner sep = 1pt,
            },
            arrow/.style = {
            line width = 1mm, draw = gray!30, >=latex
            }
            ]

            node[reserv=red] (HOT) at (0, 0){$T_textrm{tiny HOT}$};
            node[proc=yellow] (M) at (-2, -3) {$textrm{eff.} = eta_M$};
            node[proc=yellow] (L) at ( 2, -3) {$textrm{eff.} = eta_L$};
            node[reserv=blue] (COLD) at (0, -6){$T_textrm{tiny COLD}$};

            draw[arrow, ->] (HOT.south -| M) -- (M) node[left, midway, black]{$Q$};
            draw[arrow, <-] (HOT.south -| L) -- (L) node[right, midway, black]{$displaystyle{frac{eta_M}{eta_L}}Q$};
            draw[arrow, <-] (COLD.north -| M) -- (M) node[left, midway, black]{$(1 - eta_M)Q$};
            draw[arrow, ->] (COLD.north -| L) -- (L) node[right, midway, black]{$eta_M Qdisplaystyle{left(frac{1}{eta_L} - 1right)}$};
            draw[arrow, ->] (M) -- (L) node[below, midway]{$eta_M Q$};

            node[left = 0.1cm of M, black, align = center] {More\efficient};
            node[right = 0.1cm of L, black, align = center] {Less\efficient};
            node[above = 1cm] at ($(M)!0.5!(L)$){$eta_M geq eta_L$};

            end{tikzpicture}
            end{document}


            enter image description here






            share|improve this answer














            documentclass[border = 5pt]{standalone}

            usepackage{tikz}
            usetikzlibrary{calc}
            usetikzlibrary{positioning}
            usetikzlibrary{shadows.blur}

            begin{document}
            begin{tikzpicture}[
            reserv/.style = {
            draw = #1, fill = #1!50, text = white,
            rounded corners = 5pt,
            minimum width = 6cm,
            minimum height = 1cm, inner sep = 1pt,
            drop shadow
            },
            proc/.style = {
            draw = #1, fill = #1!50, text = black,
            circle,
            minimum size = 1.5cm,
            drop shadow, inner sep = 1pt,
            },
            arrow/.style = {
            line width = 1mm, draw = gray!30, >=latex
            }
            ]

            node[reserv=red] (HOT) at (0, 0){$T_textrm{tiny HOT}$};
            node[proc=yellow] (M) at (-2, -3) {$textrm{eff.} = eta_M$};
            node[proc=yellow] (L) at ( 2, -3) {$textrm{eff.} = eta_L$};
            node[reserv=blue] (COLD) at (0, -6){$T_textrm{tiny COLD}$};

            draw[arrow, ->] (HOT.south -| M) -- (M) node[left, midway, black]{$Q$};
            draw[arrow, <-] (HOT.south -| L) -- (L) node[right, midway, black]{$displaystyle{frac{eta_M}{eta_L}}Q$};
            draw[arrow, <-] (COLD.north -| M) -- (M) node[left, midway, black]{$(1 - eta_M)Q$};
            draw[arrow, ->] (COLD.north -| L) -- (L) node[right, midway, black]{$eta_M Qdisplaystyle{left(frac{1}{eta_L} - 1right)}$};
            draw[arrow, ->] (M) -- (L) node[below, midway]{$eta_M Q$};

            node[left = 0.1cm of M, black, align = center] {More\efficient};
            node[right = 0.1cm of L, black, align = center] {Less\efficient};
            node[above = 1cm] at ($(M)!0.5!(L)$){$eta_M geq eta_L$};

            end{tikzpicture}
            end{document}


            enter image description here







            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited Dec 31 '18 at 13:18

























            answered Dec 31 '18 at 12:01









            caverac

            5,7131624




            5,7131624








            • 2




              Very nice the shadows. Peraphs, for my opinion, the T of temperature is smaller than COLD. Same for HOT.
              – Sebastiano
              Dec 31 '18 at 12:27








            • 1




              @Sebastiano Good catch, already fixed it
              – caverac
              Dec 31 '18 at 13:18














            • 2




              Very nice the shadows. Peraphs, for my opinion, the T of temperature is smaller than COLD. Same for HOT.
              – Sebastiano
              Dec 31 '18 at 12:27








            • 1




              @Sebastiano Good catch, already fixed it
              – caverac
              Dec 31 '18 at 13:18








            2




            2




            Very nice the shadows. Peraphs, for my opinion, the T of temperature is smaller than COLD. Same for HOT.
            – Sebastiano
            Dec 31 '18 at 12:27






            Very nice the shadows. Peraphs, for my opinion, the T of temperature is smaller than COLD. Same for HOT.
            – Sebastiano
            Dec 31 '18 at 12:27






            1




            1




            @Sebastiano Good catch, already fixed it
            – caverac
            Dec 31 '18 at 13:18




            @Sebastiano Good catch, already fixed it
            – caverac
            Dec 31 '18 at 13:18


















            draft saved

            draft discarded




















































            Thanks for contributing an answer to TeX - LaTeX Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f468008%2fhaving-arrows-entering-and-leaving-at-different-points-on-a-single-node%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Список кардиналов, возведённых папой римским Каликстом III

            Deduzione

            Mysql.sock missing - “Can't connect to local MySQL server through socket”