function x=transforminv(Num_var,z,type,mX,sX,a,b)
for i=1:1:Num_var
    t=type(i);
    if t==1 % x ~ 正态分布
        x(i,:)=sX(i)*z(i,:)+mX(i)*ones(1,length(z(i,:))); % u = z
    elseif t==2  % x ~ 对数正态分布
        sln=sqrt(log(1+(sX(i)/mX(i))^2));
        mln=log(mX(i))-sln^2/2;
        x(i,:)=exp(mln+sln*z(i,:));
    elseif t==3  % x ~ 极值I型分布（Gumbel分布）
        alpha=pi/sqrt(6)/sX(i);
        v=mX(i)-0.577/alpha;
        x(i,:)=v-1/alpha*log(-log(normcdf(z(i,:))));
    elseif t==4 % x ~ 均匀分布
        x(i,:)=a(1)+(b(1)-a(1))*z(i,:);
    end
end
