MATLAB二变量隐函数显化取log10绘图的问题

问题遇到的现象和发生背景

img

问题相关代码,请勿粘贴截图
syms   C1 sigmaeff 
C0 = 1-C1;
sigmacp = 10^(-8);
sigmain_plant = 10^(5);
sigmaout_plant = 2000;
S11 = 0.2;
S33 = 0.6;
a = (sigmacp-sigmaeff)/(sigmaeff+(1/3)*(sigmacp-sigmaeff));
b = (2*(sigmain_plant-sigmaeff))/(sigmaeff+S11*(sigmain_plant-sigmaeff));
d = (sigmaout_plant-sigmaeff)/(sigmaeff+S33*(sigmaout_plant-sigmaeff));
F = C0*(a)+(1/3)*C1*(b+d)
j = solve(F,sigmaeff)
g = log10(j)
fplot(g,[0,1])

运行结果及报错内容

显示在忙,出不来图

我的解答思路和尝试过的方法

会不会是绘图函数的问题或者是solve的问题

我想要达到的结果

绘制出log10(eff)关于C1的图像



可以化成arr的形式然后用fsolve

syms   C1 sigmaeff
C1_arr = 0.01:0.01:1; % 定义C1的向量
sigmaeff_arr = zeros(size(C1_arr));
C0 = 1-C1;
sigmacp = 10^(-8);
sigmain_plant = 10^(5);
sigmaout_plant = 2000;
S11 = 0.2;
S33 = 0.6;
a = (sigmacp-sigmaeff)/(sigmaeff+(1/3)*(sigmacp-sigmaeff));
b = (2*(sigmain_plant-sigmaeff))/(sigmaeff+S11*(sigmain_plant-sigmaeff));
d = (sigmaout_plant-sigmaeff)/(sigmaeff+S33*(sigmaout_plant-sigmaeff));
F = C0*(a)+(1/3)*C1*(b+d);
F = matlabFunction(F);
for i = 1:1:numel(C1_arr)
    C1_v = C1_arr(i);
    f = @(sigmaeff)F(C1_v, sigmaeff);
    sigmaeff_arr(i) = fsolve(f, 1e2);
end
semilogy(C1_arr,log10(sigmaeff_arr))