Box with incoming and outgoing arrows

If you only change the last four lines so that the arrows start relative to a.west and a.east, you can achieve want you want.

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows,positioning}
\begin{document}
    \pagestyle{empty}
    %
    \tikzstyle{int}=[draw, fill=blue!20, minimum size=7em]
    \tikzstyle{init} = [pin edge={to-,thin,black}]

    \begin{tikzpicture}[node distance=2.5cm,auto,>=latex']
    \node [int,align=center] (a) {$U$\\evolution operator};    
    \draw[<-] ([yshift=5pt]a.west)  -- node[above]{$a1$} ++(-4em,0em);
    \draw[<-] ([yshift=-5pt]a.west) -- node[below]{$a2$} ++(-4em,0em);
    \draw[->] ([yshift=5pt]a.east)  -- node[above]{$b1$} ++(4em,0em);
    \draw[->] ([yshift=-5pt]a.east) -- node[below]{$b2$} ++(4em,0em);
    \end{tikzpicture}

\end{document}

enter image description here


This solved the problem, after working around I got the solution. Thanks to you all people

\documentclass[border=2mm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node [draw,minimum height=3cm] (a) {$U$ \vspace{1cm} evolution operator};
\path (a.south east) -- (a.north east)
      coordinate [pos=0.2] (p1)
      coordinate [pos=0.5] (p2)      
      coordinate [pos=0.8] (p3);
\path (a.south west) -- (a.north west)
      coordinate [pos=0.2] (p4)
      coordinate [pos=0.5] (p5)      
      coordinate [pos=0.8] (p6);
\draw [->] (p1) -- +(1cm,0) node[right]{$b_1$};
\draw [->] (p2) -- +(1cm,0) node[right]{$b_2$};
\draw [->] (p3) -- +(1cm,0) node[right]{$b_3$};
\draw [<-] (p4) -- +(-1cm,0) node[left]{$a_1$};
\draw [<-] (p5) -- +(-1cm,0) node[left]{$a_2$};
\draw [<-] (p6) -- +(-1cm,0) node[left]{$a_3$};
\end{tikzpicture}
\end{document}

Tags:

Tikz Pgf