#include #include #include #include #include #include using namespace std; #include "svd.h" //Coded by Feng Deng, University of Toronto //for internal use only struct inout{ string path; string ftransms; string fpriors; string fqmats; string co2fs; string varfs; string fluxfs; int m_r; int n_c; double lamda; double qscaler; }; int add_(int m, int n, double *w){ int i; double ep = pow(2.0,-52.0); double tl = max(m,n)*w[0]*ep; int r = 0; for (i = 0; i < n; i++) { if (w[i] > tl) { r++; } } return r; } int main(){ inout iostr; iostr.path="../data3066/"; iostr.ftransms="response_Tans03.bin"; iostr.fpriors="annual_aprioi_flux_6m_5y.txt"; iostr.fqmats="fqmatrix.txt"; iostr.co2fs="c13c_matrix3066_dlt_ff_case1.txt"; iostr.varfs="c13uncrtn_R73stn.txt"; iostr.fluxfs="../flux_co2by13cdata_dlt_ff03_case1.txt"; iostr.m_r=3066; iostr.n_c=3001; iostr.lamda=1; iostr.qscaler=1.; int n=iostr.n_c; int m=iostr.m_r; if(n>m){ cout<<"You cannot use this code to solve your problem!"<>tempx; xcov[i]=iostr.qscaler*tempx; } xcovin.close(); }else{ cout<<"cannot open the apriori covariance file: "<>x0[i]; } inico2f.close(); }else{ cout<<"cannot open apriori input file: "<>tempb; bcov[i]=sqrt(tempb); } bcovin.close(); }else{ cout<<"cannot open the measurement uncertainty covariance file: "<>bco2[i]; } bco2in.close(); }else{ cout<<"cannot open co2 concentration data input file: "<