Auxin influx carriers control vascular patterning and xylem differentiation in Arabidopsis thaliana

Norma Fàbregas1, ¶ , Pau Formosa-Jordan2, ¶,#1, Ana Confraria1, ¶,#2, Riccardo Siligato3,4, Jose M. Alonso5, Ranjan Swarup6, Malcolm J. Bennett6, Ari Pekka Mähönen3,4, Ana I. Caño-Delgado1, &,* and Marta Ibañes2, &,*.

1 Department of Molecular Genetics, Centre for Research in Agricultural Genomics (CRAG) CSIC-IRTA-UAB-UB, Barcelona E-08193, Spain.
2 Department of Structure and Constituents of Matter, Faculty of Physics, University of Barcelona, Barcelona E-08028, Spain.
3 Institute of Biotechnology, University of Helsinki, Helsinki, FIN-00014, Finland.
4 Department of Biosciences, University of Helsinki, Helsinki, FIN-00014, Finland.
5  Department of Plant and Microbial Biology, North Carolina State University, Raleigh, North Carolina 27695, USA.
6 School of Biosciences and Centre for Plant Integrative Biology, University of Nottingham, LE12 5RD Nottingham, United Kingdom.

#1  Current Address: Sainsbury Laboratory, University of Cambridge, Bateman Street, Cambridge, CB2 1LR, United Kingdom.
#2  Current Address: Instituto Gulbenkian de Ciência, 2780-156 Oeiras, Portugal.

* Corresponding authors
E-mails: marta.ibanes@ub.edu (MI), ana.cano@cragenomica.es (AICD).

¶ These authors contributed equally to this work.
& These authors also contributed equally to this work.

S1 Code. Simulation code for the model of auxin transport

This code simulates the dynamics of Eqs S7 and S8 of S1 Text in a line of cells with periodic boundary conditions. By running the following code it appears an applet where different auxin transport parameters can be modified. 

By default, influx levels (Ι), efflux levels (E), and apoplastic diffusion levels (D) can be modified through the applet slides. The output shows the cytosolic (blue) and apoplastic (green) auxin concentrations (left plot) and the influx (black) and efflux (dashed gray) carriers (right plot) at the final simulation time.

(*Number of cells along a line*)
L=60;

(*Parameter δ sets the amplitude of the fluctuations*)
δ=0.1; 

(*Random number generation for the initial conditions*)
Table[rand1[i]=1+δ*(RandomReal[]-0.5),{i,1,L}];
Table[rand2[i]=1+δ*(RandomReal[]-0.5),{i,1,L}];


(*Index vector useful for boundary conditions*)
ind=Table[i-1,{i,L+3}];
ind[[1]]=L;
ind[[L+2]]=1;
ind[[L+3]]=2;
cc[i_]:=ind[[i+1]];

(*Defining the array of variables, being Ax for the cytosolic auxin and ax for the apoplastic auxin*)
Ax=Table[ToExpression[StringJoin["A",ToString[i]]],{i,1,L}];
ax=Table[ToExpression[StringJoin["a",ToString[i]]],{i,1,L}];

(*Setting some default model parameters*)
h=2;eps=0.05; (*eps is ϵ parameter *)
dsig=2;ddeg=0.1;dca=15; (* dsig, ddeg and dca are the dimensional production, degradation and passive transport rates*)
ra=10;rp=10; (*Auxin thresholds for influx and efflux production*)
ha=2;hp=2; (*Exponents in the Hill function for auxin-induced influx and efflux carriers*)
fc=0.003;fw=0.334; (*Ratios of protonated auxin in the cell and cell wall*)
famc=1-fc;famw=1-fw; (*Ratios of anionic auxin in the cell and cell wall*)

z=2;(*z is the number of nearest neighbours per cell*)
tt=0;(* By making tt=0 we do the approximation of having the transporters just on the membrane and not in the cytosol*)

tfin=17.5;(* Final simulation time*)


Manipulate[

(*Effective model parameters, see Text S1. "tild" denotes the tilde appearing on the variables in Text S1*)
sigtild=dsig/(ddeg);dcatild=dca/ddeg; dtild=ddd/ddeg;inftild=dminf/ddeg; eetild=e/ddeg;nutild=ddeg/ddeg;


(*Functions*)
hh[x_]:=x;

f[x_]:=x^h;
atot[x_]:=x^ha/(2*x^ha+2*ra^ha);(*influx carriers levels*)
ptot[x_]:=x^hp/(x^hp+rp^hp);(*efflux carriers levels*)


(*Homogeneous steady states of the cytosolic auxin A0 and the apoplastic auxin a0*)
A0=dsig/(ddeg);
denh=(dcatild*fw+inftild*famw*atot[A0]);
a0=(dcatild*fc*A0+( eetild*ptot[A0]*famc*A0*f[A0])/(tt+2.0*f[A0]))/denh;


(*Terms of the derivatives in time*)

(*For the cytosolic auxin*)
evolA[A_,Am1_,AM1_,a_,am1_]:=eps*(-dcatild*(z*fc*A-fw*(am1+a))-eetild*hh[famc*A]*ptot[A]*(f[Am1]+f[AM1])/(tt+f[Am1]+f[AM1])+inftild*atot[A]*(hh[famw*am1]+hh[famw*a]))+sigtild-nutild*A;

(*For the apoplastic auxin*)
evola[A_,Am1_,AM1_,AM2_,a_,am1_,aM1_]:=dcatild *(fc*(A+AM1)-z*fw*a)+eetild*(f[AM1]*ptot[A]*hh[famc*A]/(tt+f[Am1]+f[AM1])+f[A]*ptot[AM1]*hh[famc*AM1]/(tt+f[A]+f[AM2]))-inftild*hh[famw*a]*(atot[A]+atot[AM1])+dtild*(aM1+am1-2*a);

(*Solving the equations*)

ss=NDSolve[Flatten[
Table[{
Ax[[i]]'[t]==evolA[Ax[[cc[i]]][t],Ax[[cc[i-1]]][t],Ax[[cc[i+1]]][t],ax[[i]][t],ax[[cc[i-1]]][t]],
ax[[i]]'[t]==evola[Ax[[cc[i]]][t],Ax[[cc[i-1]]][t],Ax[[cc[i+1]]][t],Ax[[cc[i+2]]][t],ax[[cc[i]]][t],ax[[cc[i-1]]][t],ax[[cc[i+1]]][t]],
Ax[[i]][0]==A0*rand1[i],ax[[i]][0]==a0*rand2[i]},{i,1,L}]],
Flatten[Table[{Ax[[i]],ax[[i]]},{i,1,L}]],
{t,0,tfin},Method->"StiffnessSwitching"];

(*Generating an array of the numerical evolution of the solutions*)
jump=1000;
Axdata=Table[Flatten[Table[{i,Ax[[i]][kk]}/.ss,{i,1,L}],1],{kk,1,tfin,jump}];
axdata=Table[Flatten[Table[{i,ax[[i]][kk]}/.ss,{i,1,L}],1],{kk,1,tfin,jump}];
lt=Length[Axdata];
jj=lt;

tfinAx=Flatten[Table[Ax[[i]][jj]/.ss,{i,1,L}]];
influx=Map[atot[#]&,tfinAx];
efflux=Map[ptot[#]&,tfinAx];
fz=18;(*Font Size*)

(*Plotting the output*)
gra=ListPlot[{Axdata[[Floor[jj]]],axdata[[Floor[jj]]]},Joined->True,Frame->True,PlotStyle->{Directive[Blue,Thick],Directive[Green,Thick]},FrameLabel->{"Cell (Apoplast) index","Auxin [μM]"},ImageSize->450,PlotRange->{{0,L},{0,200}},LabelStyle->Directive[fz]];

grtans=ListPlot[{influx,efflux},Joined->True,Frame->True,FrameLabel->{"Cell (Apoplast) index","Normalized carriers"},
PlotStyle->{Directive[Black,Thick],Directive[Gray,Thick,Dashed]},ImageSize->450,LabelStyle->Directive[fz]];
Show[GraphicsGrid[{{gra},{grtans}}]],

(*Parameters to vary*)
{{dminf,100,"I"},0,500},{{e,105.0,"E"},0,1000},{{ddd,2.0,"D"},0,10}]