2

enter image description here

Hello everyone. How to draw this block in LaTeX using TikZ? Thank you for all.

2
  • 3
    Welcome to TeX.SE! Please show us what you have tried so far! – Mensch Apr 20 at 18:24
  • 1
    Consider accepting one of the provided answers. – Dr. Manuel Kuehner Apr 21 at 1:50
4

simple graph with arrows

\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{arrows.meta}

\begin{document}
    
    \begin{tikzpicture}[>={Latex[open,scale=1.2]}]

        \node[minimum width=5cm, minimum height=3cm,align=center,draw](B){Mathematical model\\of\\aircraft dynamics};
        \def\d{1.5} % distance for arrows
        \draw[<-] (B.155) --++ (-\d,0) node[left] (M) {$\eta$};
        \draw[<-] (B.170) --++ (-\d,0) node[left] {$\varepsilon$};
        \draw[<-] (B.190) --++ (-\d,0) node[left] {$\xi$};
        \draw[<-] (B.205) --++ (-\d,0) node[left] {$\zeta$};
        \node[above of=M] {Input variables};        
        
        \draw[->] (B.25) --++ (\d,0) node[right] (U) {$u$};
        \draw[->] (B.17) --++ (\d,0) node[right] {$w$};
        \draw[->] (B.9) --++ (\d,0) node[right] {$q,\theta$};
        \draw[->] (B.-9) --++ (\d,0) node[right] {$v$};
        \draw[->] (B.-17) --++ (\d,0) node[right] {$p,\phi$};
        \draw[->] (B.-25) --++ (\d,0) node[right] {$r,\psi$};
        \node[above of=U] {Output variables};
        
        \draw[dashed] (B.west) --++ (-4,0) coordinate (W);
        \node[above of=W] {Longitudinal};
        \node[below of=W] {Lateral-Directional};
        
        \draw[dashed] (B.east) --++ (3,0);
        
    \end{tikzpicture}
\end{document}
4
  • Thank you very much:))) – engineer Apr 20 at 18:38
  • I encourage you to learn from this straightforward code, then try and change some parameters, just for fun. Don't hesitate to vote and accept, in order to let know that you received a correct answer. – SebGlav Apr 20 at 18:40
  • I think the positioning tikzlibrary can be used by changing the syntax \node[above of=M] {Input variables}; to \node[above= of M] {Input variables}; – js bibra Apr 21 at 0:42
  • You're right, especially if one wants to position the words more precisely. – SebGlav Apr 21 at 7:19
2

I draw the left side of your graph as a starting point.

enter image description here

\documentclass[border=5pt]{standalone}

\usepackage{tikz}
\usetikzlibrary{calc}
\usepackage{makecell}

\begin{document}
        \begin{tikzpicture}
            
            % draw rectangle
            
            \node[minimum size=4cm,draw] (r) at  (0,0) {\makecell[c]{Mathematical Model \\ of \\ aircraft dynamics}};
            
            % draw arrows/lines
            
            \foreach \y/\lab [count=\i from 1] in {1.5/$\eta$, 0.75/$\epsilon$, -0.75/$\xi$, -1.5/$\zeta$} {
                \draw [-stealth] ($ (r.west) + (-1,\y)$) node[left] (a-\i) {\lab} -- ($ (r.west)  + (0,\y)$);
            }
            
            \draw [densely dashed] ($ (r.west) + (-3,0)$) node (l-1) {} -- (r.west);
            
            % labels
            
            \node[above=0.5cm] at (a-1.north) {Input variables};
            \node (lab-1) at (l-1 |- {$(a-3)!0.5!(a-4)$}) {Lateral-Directional};
            \node[anchor=west] (lab-2) at (lab-1.west |- {$(a-2)!0.5!(a-1)$}) {Logitudinal};
            
            
        \end{tikzpicture}    
\end{document}

I saved the rectange as r, so you can copy parts of the left side and use it for the right side. Here, r.east would be interesting.

If there are questions, don't hesitate to ask them.

1
  • Thank you very much:) – engineer Apr 20 at 18:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.