我正在尝试使用3个自变量(光、温度和水汽压亏缺)来拟合非线性模型,以预测净生态系统CO2交换(NEE)。
我知道如何使用nlinfit函数,但我的问题是我想使用两个条件:
1. if VPD < 1.3
NEE = (Param(1).*Param(2).*Ind_var(:,1))./(Param(1).*Ind_var(:,1)+Param(2)) + Param(3).*(1.6324.^((Ind_var(:,2)-18)./10));
2. if VPD >= 1.3
NEE = (Param(1).*(Param(2).*exp(-Param(4).*(Ind_var(:,3)-1.3))).*Ind_var(:,1))./(Param(1).*Ind_var(:,1)+(Param(2).*exp(-Param(4).*(Ind_var(:,3)-1.3))))+Param(3).*(1.6324.^((Ind_var(:,2)-18)./10));
基本上,如果自变量VPD (蒸气压亏)低于1.3
,我想强制我的Param(4) = 0
。
但我不知道该怎么做。
你能帮我一下吗?谢谢,亚历克西斯
发布于 2016-10-17 14:20:15
您可以用Param(4)*(VPD<1.3)
替换Param(4)
。在Matlab中,条件表达式的计算结果为1(如果为真)和0(如果为假)。
https://stackoverflow.com/questions/40077676
复制相似问题