15 struct c3_str tmp = {0,0,0,0};
17 double Qp, Tl, RH, Catm;
20 double vcmax, jmax, Rd, Ca, O2, theta,StomWS;
22 vcmax = REAL(VCMAX)[0];
28 theta = REAL(THETA)[0];
29 StomWS = REAL(STOMWS)[0];
31 int ws = INTEGER(WS)[0];
37 nq = length(Qp1);nt = length(Tl1);nr = length(RH1);
39 PROTECT(lists = allocVector(VECSXP,3));
40 PROTECT(names = allocVector(STRSXP,3));
42 PROTECT(GsV = allocVector(REALSXP,nq));
43 PROTECT(ASSV = allocVector(REALSXP,nq));
44 PROTECT(CiV = allocVector(REALSXP,nq));
49 for(i = 0; i < nq ; i++)
57 tmp =
c3photoC(Qp, Tl, RH, vcmax, jmax, Rd, Bet0, Bet1, Catm, O2, theta,StomWS,ws);
59 REAL(GsV)[i] = tmp.
Gs;
60 REAL(ASSV)[i] = tmp.
Assim;
61 REAL(CiV)[i] = tmp.
Ci;
64 SET_VECTOR_ELT(lists,0,GsV);
65 SET_VECTOR_ELT(lists,1,ASSV);
66 SET_VECTOR_ELT(lists,2,CiV);
67 SET_STRING_ELT(names,0,mkChar(
"Gs"));
68 SET_STRING_ELT(names,1,mkChar(
"Assim"));
69 SET_STRING_ELT(names,2,mkChar(
"Ci"));
70 setAttrib(lists,R_NamesSymbol,names);
struct c3_str c3photoC(double Qp, double Tleaf, double RH, double Vcmax0, double Jmax, double Rd0, double bb0, double bb1, double Ca, double O2, double thet, double StomWS, int ws)
Definition: c3photo.c:119
double Assim
Definition: c3photo.h:10
double Gs
Definition: c3photo.h:11
double Ci
Definition: c3photo.h:12