\documentclass{standalone}

\usepackage{graphicx,bm,microtype,hyperref,algpseudocode,subfigure,algorithm,algorithmicx,multirow,footnote,xcolor,physics,lipsum,wasysym,physics}


\usepackage{tikz}
\usetikzlibrary{arrows,positioning,shapes.geometric}
\usetikzlibrary{decorations.pathmorphing}

\tikzset{snake it/.style={
decoration={snake, 
    amplitude = .4mm,
    segment length = 2mm},decorate}
}

%\usepackage{tgchorus}
%\usepackage[T1]{fontenc}

\begin{document}

\begin{tikzpicture}
	\begin{scope}[very thick,
		node distance=2cm,on grid,>=stealth',
		Op1/.style={circle,draw,fill=yellow!40},
		Op2/.style={circle,draw,fill=orange!40},
		Op3/.style={circle,draw,fill=red!40},
		Op4/.style={circle,draw,fill=violet!40},
		DeadOp/.style={circle,draw,fill=gray!40},
		Input/.style={fill=white!40},
		Output/.style={fill=white!40}]
		\node [Op1, align=center]		(G)		at (3*0.587785, 3*0.809017)		{$G$};
		\node [DeadOp, align=center] 		(Gamma)	at (3*0.951057, -3*0.309017)		{$\Gamma$};
		\node [Op2, align=center]		(P)		at (3*0, -3*1.00000)				{$P$};
		\node [Op3, align=center]		(W)		at (-3*0.951057, -3*0.309017)		{$W$};
		\node [Op4, align=center] 		(Sigma)	at (-3*0.587785, 3*0.809017)		{$\Sigma$};
		\node [Input, align=center] 		(In)		[above=of G]					{};
		\node [Output, align=center] 		(Out)		[above=of Sigma]				{};
		\node [Input, align=center] 		(In)		[above=of G, yshift=1cm]					{KS-DFT};
		\node [Output, align=center] 		(Out)		[above=of Sigma, yshift=1cm]				{BSE};
		\path 
		(G) 			edge [->,color=gray!50] 		node [above,sloped,black] {$\Gamma = 1 + \fdv{\Sigma}{G} GG \Gamma$}	(Gamma)
		(Gamma) 		edge [->,color=gray!50] 		node [below,sloped,black] {$P = - i GG \Gamma$}								(P)
		(P) 			edge [->,color=black] 			node [above,sloped,black] {$W = v + vPW$}								(W)
		(W) 			edge [->,color=black] 			node [above,sloped,black] {$\Sigma = i GW\Gamma$}						(Sigma)
		(Sigma) 		edge [->,color=black] 			node [above,sloped,black] {$G = G_\text{0} + G_\text{0} \Sigma G$}					(G)
		(G) 			edge [->,color=black] 			node [above,sloped,black] {$P = - i GG \quad (\Gamma = 1)$}								(P)
		(In) 			edge [->,color=black] 			node [above,sloped,black] {$\varepsilon^\text{KS}$}						(G)
		(Sigma) 		edge [->,color=black] 			node [above,sloped,black] {$W(\omega)$ \& $\varepsilon^\text{GW}$}				(Out)
		;
	\end{scope}
\end{tikzpicture}

\end{document}
