digraph task_dep {
	 # Header
	 label="Task dependencies for SWIFT v0.9.0-1189-g3424fa24";
	 compound=true;
	 ratio=0.66;
	 node[nodesep=0.15, fontsize=18, penwidth=3.];
	 edge[fontsize=12, penwidth=0.5];
	 ranksep=0.8;

	 # Special tasks
	 sort[color=blue3];
	 self_density[color=blue3];
	 self_gradient[color=blue3];
	 self_force[color=blue3];
	 self_grav[color=red3];
	 self_stars_density[color=darkorange1];
	 self_stars_feedback[color=darkorange1];
	 self_rt_gradient[color=springgreen];
	 self_rt_transport[color=springgreen];
	 pair_density[color=blue3];
	 pair_gradient[color=blue3];
	 pair_force[color=blue3];
	 pair_grav[color=red3];
	 pair_stars_density[color=darkorange1];
	 pair_stars_feedback[color=darkorange1];
	 pair_rt_gradient[color=springgreen];
	 pair_rt_transport[color=springgreen];
	 sub_self_density[color=blue3];
	 sub_self_gradient[color=blue3];
	 sub_self_force[color=blue3];
	 sub_self_stars_density[color=darkorange1];
	 sub_self_stars_feedback[color=darkorange1];
	 sub_self_rt_gradient[color=springgreen];
	 sub_self_rt_transport[color=springgreen];
	 sub_pair_density[color=blue3];
	 sub_pair_gradient[color=blue3];
	 sub_pair_force[color=blue3];
	 sub_pair_stars_density[color=darkorange1];
	 sub_pair_stars_feedback[color=darkorange1];
	 sub_pair_rt_gradient[color=springgreen];
	 sub_pair_rt_transport[color=springgreen];
	 init_grav[color=red3];
	 init_grav_out[style=filled,fillcolor=grey90,color=red3];
	 ghost_in[style=filled,fillcolor=grey90,color=blue3];
	 ghost[color=blue3];
	 ghost_out[style=filled,fillcolor=grey90,color=blue3];
	 extra_ghost[color=blue3];
	 drift_part[color=blue3];
	 drift_spart[color=darkorange1];
	 drift_gpart[color=red3];
	 drift_gpart_out[style=filled,fillcolor=grey90,color=red3];
	 hydro_end_force[color=blue3];
	 kick2[color=black];
	 timestep[color=black];
	 collect[color=black];
	 send_gradient[shape=diamond,style=filled,fillcolor=azure,color=blue3];
	 send_xv[shape=diamond,style=filled,fillcolor=azure,color=blue3];
	 send_rho[shape=diamond,style=filled,fillcolor=azure,color=blue3];
	 send_gpart[shape=diamond,style=filled,fillcolor=azure,color=red3];
	 send_spart_density[shape=diamond,style=filled,fillcolor=azure,color=darkorange1];
	 send_rt_gradient[shape=diamond,style=filled,fillcolor=azure,color=springgreen];
	 send_rt_transport[shape=diamond,style=filled,fillcolor=azure,color=springgreen];
	 recv_gradient[shape=diamond,style=filled,fillcolor=azure,color=blue3];
	 recv_xv[shape=diamond,style=filled,fillcolor=azure,color=blue3];
	 recv_rho[shape=diamond,style=filled,fillcolor=azure,color=blue3];
	 recv_gpart[shape=diamond,style=filled,fillcolor=azure,color=red3];
	 recv_spart_density[shape=diamond,style=filled,fillcolor=azure,color=darkorange1];
	 recv_rt_gradient[shape=diamond,style=filled,fillcolor=azure,color=springgreen];
	 recv_rt_transport[shape=diamond,style=filled,fillcolor=azure,color=springgreen];
	 grav_long_range[color=red3];
	 grav_mm[color=red3];
	 grav_down_in[style=filled,fillcolor=grey90,color=red3];
	 grav_down[color=red3];
	 grav_end_force[color=red3];
	 stars_in[style=filled,fillcolor=grey90,color=darkorange1];
	 stars_out[style=filled,fillcolor=grey90,color=darkorange1];
	 stars_density_ghost[color=darkorange1];
	 stars_sort[color=darkorange1];
	 rt_in[style=filled,fillcolor=grey90,color=springgreen];
	 rt_out[style=filled,fillcolor=grey90,color=springgreen];
	 rt_ghost1[color=springgreen];
	 rt_ghost2[color=springgreen];
	 rt_transport_out[style=filled,fillcolor=grey90,color=springgreen];
	 rt_tchem[color=springgreen];
	 rt_advance_cell_time[color=springgreen];
	 rt_sorts[color=springgreen];
	 recv_tend[shape=diamond,style=filled,fillcolor=azure,color=black];
	 kick1[color=black];
	 send_tend[shape=diamond,style=filled,fillcolor=azure,color=black];
	 rt_collect_times[color=springgreen];

	 # Clusters
	 subgraph clusterDensity {
		 label="";
		 bgcolor="grey99";
		 pair_density;
		 self_density;
		 sub_pair_density;
		 sub_self_density;
	 };

	 subgraph clusterForce {
		 label="";
		 bgcolor="grey99";
		 pair_force;
		 self_force;
		 sub_pair_force;
		 sub_self_force;
	 };

	 subgraph clusterGradient {
		 label="";
		 bgcolor="grey99";
		 pair_gradient;
		 self_gradient;
		 sub_pair_gradient;
		 sub_self_gradient;
	 };

	 subgraph clusterGravity {
		 label="";
		 bgcolor="grey99";
		 grav_long_range;
		 grav_mm;
		 pair_grav;
		 self_grav;
	 };

	 subgraph clusterRTgradient {
		 label="";
		 bgcolor="grey99";
		 pair_rt_gradient;
		 self_rt_gradient;
		 sub_pair_rt_gradient;
		 sub_self_rt_gradient;
	 };

	 subgraph clusterRTtransport {
		 label="";
		 bgcolor="grey99";
		 pair_rt_transport;
		 self_rt_transport;
		 sub_pair_rt_transport;
		 sub_self_rt_transport;
	 };

	 subgraph clusterStarsDensity {
		 label="";
		 bgcolor="grey99";
		 pair_stars_density;
		 self_stars_density;
		 sub_pair_stars_density;
		 sub_self_stars_density;
	 };

	 subgraph clusterStarsFeedback {
		 label="";
		 bgcolor="grey99";
		 pair_stars_feedback;
		 self_stars_feedback;
		 sub_pair_stars_feedback;
		 sub_self_stars_feedback;
	 };


	 # Dependencies
	 sort->pair_density[color=blue3,fontcolor=blue3]
	 sort->pair_force[color=blue3,fontcolor=blue3]
	 sort->pair_rt_transport[color=blue3,fontcolor=blue3]
	 sort->pair_stars_density[color=blue3,fontcolor=blue3]
	 sort->pair_rt_gradient[color=blue3,fontcolor=blue3]
	 sort->sub_pair_density[color=blue3,fontcolor=blue3]
	 sort->sub_pair_force[color=blue3,fontcolor=blue3]
	 sort->sub_pair_rt_transport[color=blue3,fontcolor=blue3]
	 sort->sub_pair_stars_density[color=blue3,fontcolor=blue3]
	 sort->sub_pair_rt_gradient[color=blue3,fontcolor=blue3]
	 sort->rt_sorts[color=blue3,fontcolor=blue3]
	 sort->recv_rt_gradient[color=blue3,fontcolor=blue3]
	 sort->recv_rho[color=blue3,fontcolor=blue3]
	 sort->recv_gradient[color=blue3,fontcolor=blue3]
	 sort->sub_self_density[color=blue3,fontcolor=blue3]
	 sort->sub_self_stars_density[color=blue3,fontcolor=blue3]
	 sort->sub_self_rt_gradient[color=blue3,fontcolor=blue3]
	 self_density->ghost_in[color=blue3,fontcolor=blue3]
	 self_gradient->extra_ghost[color=blue3,fontcolor=blue3]
	 self_force->hydro_end_force[color=blue3,fontcolor=blue3]
	 self_grav->grav_down_in[color=red3,fontcolor=red3]
	 self_stars_density->stars_density_ghost[color=darkorange1,fontcolor=darkorange1]
	 self_stars_feedback->stars_out[color=darkorange1,fontcolor=darkorange1]
	 self_rt_gradient->rt_ghost2[color=springgreen,fontcolor=springgreen]
	 self_rt_transport->rt_transport_out[color=springgreen,fontcolor=springgreen]
	 pair_density->ghost_in[color=blue3,fontcolor=blue3]
	 pair_density->recv_rho[color=blue3,fontcolor=blue3]
	 pair_gradient->extra_ghost[color=blue3,fontcolor=blue3]
	 pair_gradient->recv_gradient[color=blue3,fontcolor=blue3]
	 pair_force->hydro_end_force[color=blue3,fontcolor=blue3]
	 pair_force->recv_tend[color=blue3,fontcolor=blue3]
	 pair_force->recv_rt_gradient[color=blue3,fontcolor=blue3]
	 pair_grav->grav_down_in[color=red3,fontcolor=red3]
	 pair_grav->recv_tend[color=red3,fontcolor=red3]
	 pair_stars_density->stars_density_ghost[color=darkorange1,fontcolor=darkorange1]
	 pair_stars_density->recv_spart_density[color=darkorange1,fontcolor=darkorange1]
	 pair_stars_feedback->stars_out[color=darkorange1,fontcolor=darkorange1]
	 pair_stars_feedback->recv_tend[color=darkorange1,fontcolor=darkorange1]
	 pair_rt_gradient->rt_ghost2[color=springgreen,fontcolor=springgreen]
	 pair_rt_gradient->recv_rt_transport[color=springgreen,fontcolor=springgreen]
	 pair_rt_transport->rt_transport_out[color=springgreen,fontcolor=springgreen]
	 pair_rt_transport->recv_tend[color=springgreen,fontcolor=springgreen]
	 pair_rt_transport->rt_advance_cell_time[color=springgreen,fontcolor=springgreen]
	 sub_self_density->ghost_in[color=blue3,fontcolor=blue3]
	 sub_self_gradient->extra_ghost[color=blue3,fontcolor=blue3]
	 sub_self_force->hydro_end_force[color=blue3,fontcolor=blue3]
	 sub_self_stars_density->stars_density_ghost[color=darkorange1,fontcolor=darkorange1]
	 sub_self_stars_feedback->stars_out[color=darkorange1,fontcolor=darkorange1]
	 sub_self_rt_gradient->rt_ghost2[color=springgreen,fontcolor=springgreen]
	 sub_self_rt_transport->rt_transport_out[color=springgreen,fontcolor=springgreen]
	 sub_pair_density->ghost_in[color=blue3,fontcolor=blue3]
	 sub_pair_density->recv_rho[color=blue3,fontcolor=blue3]
	 sub_pair_gradient->extra_ghost[color=blue3,fontcolor=blue3]
	 sub_pair_gradient->recv_gradient[color=blue3,fontcolor=blue3]
	 sub_pair_force->hydro_end_force[color=blue3,fontcolor=blue3]
	 sub_pair_force->recv_tend[color=blue3,fontcolor=blue3]
	 sub_pair_force->recv_rt_gradient[color=blue3,fontcolor=blue3]
	 sub_pair_stars_density->stars_density_ghost[color=darkorange1,fontcolor=darkorange1]
	 sub_pair_stars_density->recv_spart_density[color=darkorange1,fontcolor=darkorange1]
	 sub_pair_stars_feedback->stars_out[color=darkorange1,fontcolor=darkorange1]
	 sub_pair_stars_feedback->recv_tend[color=darkorange1,fontcolor=darkorange1]
	 sub_pair_rt_gradient->rt_ghost2[color=springgreen,fontcolor=springgreen]
	 sub_pair_rt_gradient->recv_rt_transport[color=springgreen,fontcolor=springgreen]
	 sub_pair_rt_transport->rt_transport_out[color=springgreen,fontcolor=springgreen]
	 sub_pair_rt_transport->recv_tend[color=springgreen,fontcolor=springgreen]
	 sub_pair_rt_transport->rt_advance_cell_time[color=springgreen,fontcolor=springgreen]
	 init_grav->grav_long_range[color=red3,fontcolor=red3]
	 init_grav->init_grav_out[color=red3,fontcolor=red3]
	 init_grav_out->pair_grav[color=red3,fontcolor=red3]
	 init_grav_out->self_grav[color=red3,fontcolor=red3]
	 init_grav_out->init_grav_out[color=red3,fontcolor=red3]
	 init_grav_out->grav_mm[color=red3,fontcolor=red3]
	 ghost_in->ghost[color=blue3,fontcolor=blue3]
	 ghost->ghost_out[color=blue3,fontcolor=blue3]
	 ghost_out->pair_gradient[color=blue3,fontcolor=blue3]
	 ghost_out->sub_self_gradient[color=blue3,fontcolor=blue3]
	 ghost_out->sub_pair_gradient[color=blue3,fontcolor=blue3]
	 ghost_out->send_rho[color=blue3,fontcolor=blue3]
	 ghost_out->self_gradient[color=blue3,fontcolor=blue3]
	 extra_ghost->pair_force[color=blue3,fontcolor=blue3]
	 extra_ghost->sub_self_force[color=blue3,fontcolor=blue3]
	 extra_ghost->sub_pair_force[color=blue3,fontcolor=blue3]
	 extra_ghost->send_gradient[color=blue3,fontcolor=blue3]
	 extra_ghost->self_force[color=blue3,fontcolor=blue3]
	 drift_part->pair_density[color=blue3,fontcolor=blue3]
	 drift_part->pair_stars_density[color=blue3,fontcolor=blue3]
	 drift_part->pair_rt_gradient[color=blue3,fontcolor=blue3]
	 drift_part->sub_self_density[color=blue3,fontcolor=blue3]
	 drift_part->sub_self_stars_density[color=blue3,fontcolor=blue3]
	 drift_part->sub_self_rt_gradient[color=blue3,fontcolor=blue3]
	 drift_part->sub_pair_density[color=blue3,fontcolor=blue3]
	 drift_part->sub_pair_stars_density[color=blue3,fontcolor=blue3]
	 drift_part->sub_pair_rt_gradient[color=blue3,fontcolor=blue3]
	 drift_part->sort[color=blue3,fontcolor=blue3]
	 drift_part->send_rho[color=blue3,fontcolor=blue3]
	 drift_part->send_xv[color=blue3,fontcolor=blue3]
	 drift_part->send_rt_gradient[color=blue3,fontcolor=blue3]
	 drift_part->send_rt_transport[color=blue3,fontcolor=blue3]
	 drift_part->self_density[color=blue3,fontcolor=blue3]
	 drift_part->self_stars_density[color=blue3,fontcolor=blue3]
	 drift_part->self_rt_gradient[color=blue3,fontcolor=blue3]
	 drift_spart->kick2[color=darkorange1,fontcolor=darkorange1]
	 drift_spart->pair_stars_density[color=darkorange1,fontcolor=darkorange1]
	 drift_spart->sub_self_stars_density[color=darkorange1,fontcolor=darkorange1]
	 drift_spart->sub_pair_stars_density[color=darkorange1,fontcolor=darkorange1]
	 drift_spart->stars_sort[color=darkorange1,fontcolor=darkorange1]
	 drift_spart->send_spart_density[color=darkorange1,fontcolor=darkorange1]
	 drift_spart->self_stars_density[color=darkorange1,fontcolor=darkorange1]
	 drift_gpart->drift_gpart_out[color=red3,fontcolor=red3]
	 drift_gpart->send_gpart[color=red3,fontcolor=red3]
	 drift_gpart_out->pair_grav[color=red3,fontcolor=red3]
	 drift_gpart_out->self_grav[color=red3,fontcolor=red3]
	 drift_gpart_out->drift_gpart_out[color=red3,fontcolor=red3]
	 hydro_end_force->kick2[color=blue3,fontcolor=blue3]
	 kick2->timestep[color=black,fontcolor=black]
	 kick2->stars_in[color=black,fontcolor=black]
	 kick2->rt_in[color=black,fontcolor=black]
	 timestep->kick1[color=black,fontcolor=black]
	 timestep->collect[color=black,fontcolor=black]
	 collect->send_tend[color=black,fontcolor=black]
	 send_gradient->hydro_end_force[color=blue3,fontcolor=blue3]
	 send_xv->send_rho[color=blue3,fontcolor=blue3]
	 send_xv->ghost_in[color=blue3,fontcolor=blue3]
	 send_xv->send_rt_gradient[color=blue3,fontcolor=blue3]
	 send_rho->send_gradient[color=blue3,fontcolor=blue3]
	 send_rho->extra_ghost[color=blue3,fontcolor=blue3]
	 send_gpart->grav_down[color=red3,fontcolor=red3]
	 send_spart_density->stars_out[color=darkorange1,fontcolor=darkorange1]
	 send_rt_gradient->send_rt_transport[color=springgreen,fontcolor=springgreen]
	 send_rt_gradient->rt_ghost2[color=springgreen,fontcolor=springgreen]
	 send_rt_transport->rt_transport_out[color=springgreen,fontcolor=springgreen]
	 recv_gradient->recv_rt_gradient[color=blue3,fontcolor=blue3]
	 recv_gradient->pair_force[color=blue3,fontcolor=blue3]
	 recv_gradient->sub_pair_force[color=blue3,fontcolor=blue3]
	 recv_xv->recv_rho[color=blue3,fontcolor=blue3]
	 recv_xv->recv_gradient[color=blue3,fontcolor=blue3]
	 recv_xv->recv_rt_gradient[color=blue3,fontcolor=blue3]
	 recv_xv->sort[color=blue3,fontcolor=blue3]
	 recv_xv->pair_density[color=blue3,fontcolor=blue3]
	 recv_xv->sub_pair_density[color=blue3,fontcolor=blue3]
	 recv_rho->recv_gradient[color=blue3,fontcolor=blue3]
	 recv_rho->recv_rt_gradient[color=blue3,fontcolor=blue3]
	 recv_rho->pair_gradient[color=blue3,fontcolor=blue3]
	 recv_rho->pair_stars_density[color=blue3,fontcolor=blue3]
	 recv_rho->sub_pair_gradient[color=blue3,fontcolor=blue3]
	 recv_rho->sub_pair_stars_density[color=blue3,fontcolor=blue3]
	 recv_gpart->pair_grav[color=red3,fontcolor=red3]
	 recv_spart_density->stars_sort[color=darkorange1,fontcolor=darkorange1]
	 recv_spart_density->pair_stars_feedback[color=darkorange1,fontcolor=darkorange1]
	 recv_spart_density->sub_pair_stars_feedback[color=darkorange1,fontcolor=darkorange1]
	 recv_rt_gradient->rt_sorts[color=springgreen,fontcolor=springgreen]
	 recv_rt_gradient->recv_rt_transport[color=springgreen,fontcolor=springgreen]
	 recv_rt_gradient->rt_advance_cell_time[color=springgreen,fontcolor=springgreen]
	 recv_rt_gradient->pair_rt_gradient[color=springgreen,fontcolor=springgreen]
	 recv_rt_gradient->sub_pair_rt_gradient[color=springgreen,fontcolor=springgreen]
	 recv_rt_transport->rt_advance_cell_time[color=springgreen,fontcolor=springgreen]
	 recv_rt_transport->pair_rt_transport[color=springgreen,fontcolor=springgreen]
	 recv_rt_transport->sub_pair_rt_transport[color=springgreen,fontcolor=springgreen]
	 grav_long_range->grav_down[color=red3,fontcolor=red3]
	 grav_mm->grav_down_in[color=red3,fontcolor=red3]
	 grav_down_in->grav_down[color=red3,fontcolor=red3]
	 grav_down_in->grav_down_in[color=red3,fontcolor=red3]
	 grav_down->grav_end_force[color=red3,fontcolor=red3]
	 grav_end_force->kick2[color=red3,fontcolor=red3]
	 stars_in->pair_stars_density[color=darkorange1,fontcolor=darkorange1]
	 stars_in->sub_self_stars_density[color=darkorange1,fontcolor=darkorange1]
	 stars_in->sub_pair_stars_density[color=darkorange1,fontcolor=darkorange1]
	 stars_in->self_stars_density[color=darkorange1,fontcolor=darkorange1]
	 stars_out->timestep[color=darkorange1,fontcolor=darkorange1]
	 stars_out->rt_in[color=darkorange1,fontcolor=darkorange1]
	 stars_density_ghost->pair_stars_feedback[color=darkorange1,fontcolor=darkorange1]
	 stars_density_ghost->sub_self_stars_feedback[color=darkorange1,fontcolor=darkorange1]
	 stars_density_ghost->sub_pair_stars_feedback[color=darkorange1,fontcolor=darkorange1]
	 stars_density_ghost->send_spart_density[color=darkorange1,fontcolor=darkorange1]
	 stars_density_ghost->self_stars_feedback[color=darkorange1,fontcolor=darkorange1]
	 stars_sort->pair_stars_feedback[color=darkorange1,fontcolor=darkorange1]
	 stars_sort->sub_pair_stars_feedback[color=darkorange1,fontcolor=darkorange1]
	 stars_sort->pair_stars_density[color=darkorange1,fontcolor=darkorange1]
	 stars_sort->sub_self_stars_density[color=darkorange1,fontcolor=darkorange1]
	 stars_sort->sub_pair_stars_density[color=darkorange1,fontcolor=darkorange1]
	 rt_in->rt_ghost1[color=springgreen,fontcolor=springgreen]
	 rt_out->timestep[color=springgreen,fontcolor=springgreen]
	 rt_out->collect[color=springgreen,fontcolor=springgreen]
	 rt_ghost1->pair_rt_gradient[color=springgreen,fontcolor=springgreen]
	 rt_ghost1->sub_self_rt_gradient[color=springgreen,fontcolor=springgreen]
	 rt_ghost1->sub_pair_rt_gradient[color=springgreen,fontcolor=springgreen]
	 rt_ghost1->send_rt_gradient[color=springgreen,fontcolor=springgreen]
	 rt_ghost1->self_rt_gradient[color=springgreen,fontcolor=springgreen]
	 rt_ghost2->pair_rt_transport[color=springgreen,fontcolor=springgreen]
	 rt_ghost2->sub_self_rt_transport[color=springgreen,fontcolor=springgreen]
	 rt_ghost2->sub_pair_rt_transport[color=springgreen,fontcolor=springgreen]
	 rt_ghost2->send_rt_transport[color=springgreen,fontcolor=springgreen]
	 rt_ghost2->self_rt_transport[color=springgreen,fontcolor=springgreen]
	 rt_transport_out->rt_tchem[color=springgreen,fontcolor=springgreen]
	 rt_tchem->rt_advance_cell_time[color=springgreen,fontcolor=springgreen]
	 rt_advance_cell_time->rt_collect_times[color=springgreen,fontcolor=springgreen]
	 rt_advance_cell_time->rt_out[color=springgreen,fontcolor=springgreen]
	 rt_advance_cell_time->send_tend[color=springgreen,fontcolor=springgreen]
	 rt_advance_cell_time->recv_tend[color=springgreen,fontcolor=springgreen]
	 rt_sorts->recv_rt_transport[color=springgreen,fontcolor=springgreen]
	 rt_sorts->pair_rt_gradient[color=springgreen,fontcolor=springgreen]
	 rt_sorts->sub_pair_rt_gradient[color=springgreen,fontcolor=springgreen]
}