Fsolve says 'equation solved at initial point' -- how to fix?

조회 수: 12 (최근 30일)
Mark
Mark 2021년 8월 2일
댓글: Mark 2021년 8월 12일
Hello everyone,
I would like to ask a question regarding some code I am working on at the moment. This is my first time posting on this site, so I do apologise if I fail to follow all conventions and/or etiquette, and thank you very much for your patience and help!
The code below is supposed to provide the solution to a system of 562 non-linear simultaneous equations. Put simply, my question is: why does MATLAB say that the '[e]quation [was] solved at [the] initial point' (see output below)? And how can I get it to perform the 'usual' iterative routine until a solution is found?
Norm of First-order Trust-region
Iteration Func-count f(x) step optimality radius
0 563 1.26012e-25 5.34e-10 1
Equation solved at initial point.
fsolve completed because the vector of function values at the initial point
is near zero as measured by the value of the function tolerance, and
the problem appears regular as measured by the gradient.
As I am still relatively new to MATLAB, I do not understand the intricacies of the fsolve algorithm deeply enough to understand where the issue lies -- which is why I thought I would try and soak up some of the wisdom here. I tried checking the code (variables, equations, etc.) for possible mistakes, but it seems to me that the code is correct as is. I am attaching the whole code anyway, both the main file and the function (thus probably breaching etiquette already!) so that sharper eyes may spot mistakes where I do not see any. Any leads, anyone? Thank you all very much!
Mark
clear all;
close all;
A = [1 1];
B = [0 0];
C = [1 1 1 1 1 1 1 1 1 1 1 1];
D = [1 1 1 1 0 1 1 1 1 1 1 0];
E = [1 1 1 1 1 1 1 1 1 1 1 0];
F = [0 1 0 0 0 1 1 1 1 0 0 0];
G = [0 0 1 1 1 1 1 1 1 0 0 0];
H = [1 0 0 0 0 0 0 0 0 1 1 1];
I = [1 0 1 1 1 0 0 0 0 1 1 1];
J = [1 1 0 0 0 0 0 0 0 1 1 1];
K = [0 0 1 1 0 1 1 1 1 0 0 0];
L = [0 0 0 0 1 1 1 1 1 1 1 0];
M = [0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75];
N = [0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75];
O = [0 0 0 0 0 0 0 0 0 0 0 0];
P = [0 1.00 0 1.00 0 1.00 0 1.00 0 1.00 0 0];
Q = [0 0 0 0 0 0 0 0 0 0 0 0];
R = [1 1 1 1 1 1 1 1];
S = [0.90 0.90 0.90 0.90 0.90 0.90 0.90 0.90; 0.90 0.90 0.90 0.90 0.90 0.90 0.90 0.90; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0;
0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0];
T = [1.50 1.50 1.50 1.50 1.50 1.50 1.50 1.50];
U = 0.025;
V = 0;
W = 0.05;
X = 0.50;
Y = 0.10;
Z = 0.10;
AA = [1177,2088];
AB = [200 25 2 0 0 100 200 200 0 20 0 0; 0 100 0 6 0 95 200 20 20 20 30 0; 0 0 20 0 0 82 0 0 0 0 0 0; 0 0 0 30 0 0 58 0 0 0 0 0; 0 0 0 0 0 0 0 0 0 0 0 0;
10 10 0 0 0 20 5 10 0 20 20 0; 0 15 0 0 0 0 5 0 10 0 80 40; 20 40 10 20 0 10 0 50 30 100 25 0; 0 20 0 10 4 0 10 0 100 75 200 30; 94 29 28 26 0 15 150 60 34 300 508 0;
0 113 0 50 12 0 120 0 70 400 700 175; 0 0 0 0 0 0 0 0 0 0 0 0];
AC = [1 1 1 1 1 1 1 1 1 1 1 1; 1 1 1 1 1 1 1 1 1 1 1 1; 1 1 1 1 1 1 1 1 1 1 1 1; 1 1 1 1 1 1 1 1 1 1 1 1; 1 1 1 1 1 1 1 1 1 1 1 1; 1 1 1 1 1 1 1 1 1 1 1 1;
1 1 1 1 1 1 1 1 1 1 1 1; 1 1 1 1 1 1 1 1 1 1 1 1; 1 1 1 1 1 1 1 1 1 1 1 1; 1 1 1 1 1 1 1 1 1 1 1 1; 1 1 1 1 1 1 1 1 1 1 1 1; 1 1 1 1 1 1 1 1 1 1 1 1];
AD = [0 0 0 0 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0 0 0 0 0;
0 0 0 0 0 0 0 0 0 0 0 0; 0 0 0 0 10 15 30 10 18 30 125 0; 0 0 0 0 20 50 70 20 10 140 180 50; 0 0 0 0 10 25 40 10 5 100 75 0; 0 0 0 0 10 10 10 10 5 30 20 50;
0 0 0 0 0 0 0 0 0 0 0 0];
AE = [800 350; 153 147; 36 54; 36 54; 3 22; 9 71; 16 74; 2 48; 2 73; 84 461; 32 478; 4 256];
AF = ["RNT = Rents" "MLT = Melt" "FL = Fuel"];
AG = [0 0 0; 9 21 5; 0 0 0; 0 0 0; 0 0 0; 13 14 6; 5 6 6; 56 58 28; 50 51 50; 0 0 0; 0 0 0; 0 0 0];
AH = [0 0 0; 0 0 0; 5 13 3; 16 39 9; 0 0 0; 16 16 8; 8 8 8; 8 8 4; 3 3 3; 0 0 0; 0 0 0; 0 0 0];
AI = [1 1 1 1 1 1 1 0];
AJ = [0 0 14 15 1.2 15.8 8 0; 10 2 5 6 0.6 7.4 1 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 25 7 3 3 0.3 3.7 8 0; 0 0 0 0 0.3 3.7 30 0; 14 4 6 6 0.1 1.9 18 0;
0 0 3 4 0.4 4.6 11 0; 22 6 2 2 0.3 4.7 5 0; 0 0 2 3 0.2 1.8 20 0; 0 0 0 0 0 0 0 0];
AK = [0 0 47 47 4.4 57.6 31 0; 30 7 15 15 1.4 17.6 3 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 34 9 4 3 0.3 3.7 8 0; 0 0 0 0 0.3 3.7 31 0; 19 5 7 7 0.2 2.8 18 0;
0 0 3 4 0.4 4.6 11 0; 8 2 1 0 0.1 0.9 1 0; 0 0 1 1 0.1 0.9 6 0; 0 0 0 0 0 0 0 0];
AL = [0 0 16 16 1.6 21.4 12 0; 10 2 3 4 0.4 4.6 1 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 23 6 2 1 0.1 1.9 4 0; 0 0 0 0 0.2 2.8 30 0; 13 4 3 3 0.1 0.9 9 0;
0 0 1 2 0.4 4.6 11 0; 26 7 1 2 0.3 3.7 3 0; 0 0 1 2 0.2 2.8 26 0; 0 0 0 0 0 0 0 0];
AM = [875 230 181 181 12 147 97 187; 119 31 105 107 9 119 20 101; 0 0 0 0 0 0 0 13; 0 0 0 0 0 0 0 48; 0 0 0 0 0 0 0 0; 246 64 40 40 4 53 88 92; 0 0 0 0 9 114 838 49;
158 42 93 95 2 22 241 125; 0 0 40 40 10 125 278 77; 349 91 37 38 5 66 70 13; 0 0 57 58 6 69 757 9; 0 0 0 0 0 0 0 0];
AN = [0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0; 0 0 0 0 2 23 25 0;
0 0 0 0 0 0 0 0; 0 0 0 0 2 23 25 0; 0 0 0 0 0 0 0 0];
AO = [6400 650; 400 100; 200 40; 100 20; 10 10; 70 70; 50 30; 10 30; 10 60; 700 500; 260 500; 10 80];
AP = [0 151 0 0 0 187 152 802 1361 0 0 0];
AQ = [0 0 125 248 141 217 232 113 82 0 0 0];
AR = [2349 814 240 375 141 602 1138 490 415 2080 2873 505];
FO0 = [875 162 90 143 0 0 0 0 0 0 0 0];
AT = [1000 50 100 50 0 0 0 0 0 0 0 0];
AU = [0 0 0 0 625 1250 1875 625 475 3750 5000 2000];
AV = [1 1 1 1 1 1 1 1 1 1 1 1];
AW = [0 6 0 0 0 14 10 60 110 0 0 0];
AX = [0 0 0 0 0 0 0 0 0 0 0 0];
AY0 = [0 0 0 0 0 0 0 238 790 265 395 0];
AZ0 = [0 0 0 0 50 100 150 50 38 300 400 100];
BA = [0 0 0 0 50 100 150 50 38 300 400 100];
BB = [0 0 0 0 0 0 0 0 0 0 0 505];
BC = [2025 462 180 233 125 280 390 150 151 1145 1310 260];
BD = [1 1 1 1 1 1 0 0];
BE = [911 54 269 36 0 0 0 0];
CD = [0 0 0 100 0 150 400 0];
BG = [0 0 0 100 0 150 400 0];
BH = [0 0 0 258 0 188 70.4 0];
BI = [0 0 0 0 0 0 0 0];
BJ = [0 0 0 0 0 0 0 0];
BK = 1000;
BL = 950;
BM = 505;
CE = 0;
BO = 6478;
BP = 5299;
BQ = 445;
FV = 617.8;
BS = 10000;
BT = 500;
BU = 1579.2;
CF = 0;
BW = 200;
BX = 100;
BY = 0;
BZ = 0;
CA = 0.1088;
CB = 0.2176;
CC = B;
CD = CD/BK;
CE = CE/BK;
CF = CF/BK;
CG = AM;
CH = AR-AQ;
CI = CH+AP;
CJ = AO;
CK = sum(CJ);
CL = AA./CK;
CM = zeros(size(C,2),size(A,2));
CM(CJ~=0) = (AE./CJ)./CL;
CN = AG;
CO = AH;
CP = zeros(size(C,2),size(R,2));
CP(:,AI~=0) = AJ(:,AI~=0);
CQ = zeros(size(C,2),size(R,2));
CQ(:,AI~=0) = AK(:,AI~=0);
CR = zeros(size(C,2),size(R,2));
CR(:,AI~=0) = AL(:,AI~=0);
CS = sum(CN,2);
CT = sum(CO,2);
CU = zeros(size(C,2),size(R,2));
CU(:,AI~=0) = CP(:,AI~=0)+CQ(:,AI~=0)+CR(:,AI~=0);
CV = zeros(size(C,2),size(R,2));
CV(:,AI~=0) = AN(:,AI~=0);
CW = zeros(size(C,2),size(R,2));
CW(:,AI~=0) = CV(:,AI~=0)./(CG(:,AI~=0)-CV(:,AI~=0));
CW(CG==0) = 0;
CX = zeros(size(C,2),size(R,2));
CX(:,AI~=0) = CU(:,AI~=0)./(CG(:,AI~=0)-CV(:,AI~=0)-CU(:,AI~=0));
CX(CG==0) = 0;
CY = [0 CX(1,4) 0 0 0 CX(1,4) 0 CX(1,4) 0 CX(1,4) 0 0; 0 0 0 0 0 0 0 0 CX(2,6) 0 CX(2,6) 0; 0 0 0 0 0 CX(3,4) 0 0 0 0 0 0;
0 0 0 0 0 0 CX(4,6) 0 0 0 0 0; 0 0 0 0 0 0 0 0 0 0 0 0; CX(6,2) 0 0 0 0 0 CX(6,6) 0 0 0 CX(6,6) 0;
0 CX(7,4) 0 0 0 0 0 0 0 0 0 0; CX(8,2) 0 CX(8,2) 0 0 0 0 0 CX(8,6) 0 CX(8,6) 0; 0 CX(9,4) 0 CX(9,4) 0 0 0 0 0 CX(9,4) 0 0;
CX(10,2) 0 CX(10,2) 0 0 0 0 0 CX(10,6) 0 CX(10,6) 0; 0 CX(11,4) 0 CX(11,4) 0 0 0 0 0 CX(11,4) 0 0;
0 0 0 0 0 0 0 0 0 0 0 0];
CZ = AC+CY;
DA = AB./AR;
DB = DA./CZ;
DC = sum(DA.*AR,2); DC = DC';
DD = zeros(size(C,2),size(C,2));
DD(:,L~=0) = AD(:,L~=0)./AZ0(:,L~=0);
DD(:,end) = AD(:,end)/AZ0(end);
DE = zeros(1,size(C,2));
DE(L~=0) = (BA(L~=0)./AU(L~=0));
DE(end) = BA(end)/AU(end);
DF = sum(BA(L~=0));
DG = BT/BS;
DH = zeros(1,size(C,2));
DH(E~=0) = AU(E~=0)./sum(AU(E~=0));
DI = AV;
DJ = AV;
DK = AV;
DL = zeros(1,size(C,2));
DL(G~=0) = (AV(G~=0).*CH(G~=0)+DK(G~=0).*AQ(G~=0))./AR(G~=0);
DL(G==0) = (AV(G==0).*CH(G==0))./AR(G==0);
DM = zeros(1,size(C,2));
DM(F~=0) = (AV(F~=0).*CH(F~=0)+DJ(F~=0).*AP(F~=0))./CI(F~=0);
DM(F==0) = (AV(F==0).*CH(F==0))./CI(F==0);
DM(CI==0) = 0;
DN = BC./ AR;
DO = 1;
DP = 0;
DQ = 0;
DR = CN(:,2);
DS = CO(:,2);
DT = CQ;
DU = CN(:,3);
DV = CO(:,3);
DW = CR;
DX = CN(:,1);
DY = CO(:,1);
DZ = CP;
EA = zeros(1,size(C,2));
EA(F~=0) = AW(F~=0)./(AP(F~=0)-AW(F~=0)-CS(F~=0)');
EB = zeros(1,size(C,2));
EB(F~=0) = CS(F~=0)'./(AP(F~=0)-CS(F~=0)');
EC = zeros(1,size(C,2));
EC(G~=0) = AX(G~=0)./(AQ(G~=0)+AX(G~=0)+CT(G~=0)');
ED = zeros(1,size(C,2));
ED(G~=0) = CT(G~=0)'./(AQ(G~=0)+CT(G~=0)');
EE = DJ./((1+EA).*(1+EB)*BK);
EF = DK./((1-EC).*(1-ED)*BK);
EG = [1 0 1 0 0 0 0 0 0 0 0 0];
EH = [0 1 0 1 0 1 0 1 0 1 0 0];
EI = [0 0 0 0 1 0 1 0 1 0 1 1];
EJ = [(sum(CJ(EG~=0,1)))/1000, (sum(CJ(EG~=0,2)))/1000, (sum(CJ(EH~=0,1)))/1000, (sum(CJ(EH~=0,2)))/1000, (sum(CJ(EI~=0,1)))/1000, (sum(CJ(EI~=0,2)))/1000, 18, 0];
EK = zeros(size(C,2),size(R,2));
EK(D~=0,AI~=0) = (CG(D~=0,AI~=0)./EJ(AI~=0))./((1+CW(D~=0,AI~=0)).*(1+CX(D~=0,AI~=0)));
EK(CG==0) = 0;
EL = zeros(size(C,2),size(R,2));
EL(D~=0,AI~=0) = (1+CX(D~=0,AI~=0)).*(1+CW(D~=0,AI~=0));
EM = zeros(size(C,2),size(R,2));
EM(D~=0,AI~=0) = S(D~=0,AI~=0).*EK(D~=0,AI~=0);
EN = zeros(size(C,2),size(R,2));
EN(D~=0,AI~=0) = (EL(D~=0,AI~=0).*(EK(D~=0,AI~=0)-EM(D~=0,AI~=0)))./sum(EL(D~=0,AI~=0).*(EK(D~=0,AI~=0)-EM(D~=0,AI~=0)));
EO = zeros(size(C,2),size(R,2));
EO(D~=0,AI~=0) = (EN(D~=0,AI~=0)./(EL(D~=0,AI~=0).^(1-T(AI~=0)))).^(1./T(AI~=0));
EP = BB(end)/(BB(end)+BP);
EQ = zeros(1,size(C,2));
EQ(E~=0) = AR(E~=0)/sum(AR(E~=0));
ER = zeros(1,size(C,2));
ER(D~=0) = CI(D~=0)/sum(CI(D~=0));
ES = zeros(size(C,2),size(R,2));
ES(E~=0,AI~=0) = CG(E~=0,AI~=0)./sum(CG(E~=0,AI~=0));
ET = zeros(1,size(C,2));
ET(F~=0) = EB(F~=0)'./(DR(F~=0)+DX(F~=0)+DU(F~=0));
EU = repmat(ET',1,size(AF,2));
EV = zeros(1,size(C,2));
EV(K~=0) = ED(K~=0)'./(DS(K~=0)+DY(K~=0)+DV(K~=0));
EW = repmat(EV',1,size(AF,2)); EW(5,:) = 0;
EX = zeros(size(C,2),size(R,2));
EX(D~=0,AI~=0) = DT(D~=0,AI~=0)+DZ(D~=0,AI~=0)+DW(D~=0,AI~=0);
EY = zeros(size(C,2),size(R,2));
EY(D~=0,AI~=0) = CX(D~=0,AI~=0)./EX(D~=0,AI~=0);
EY(EX==0) = 0;
EZ=zeros(size(C,2),size(R,2)); EZ(D~=0,AI~=0) = EY(D~=0,AI~=0);
FA=zeros(size(C,2),size(R,2)); FA(D~=0,AI~=0) = EY(D~=0,AI~=0);
FB=zeros(size(C,2),size(R,2)); FB(D~=0,AI~=0) = EY(D~=0,AI~=0);
FC = zeros(1,size(C,2));
FC(F~=0) = (DJ(F~=0)./(AV(F~=0))).*((AP(F~=0)./(CH(F~=0))).^(1./M(F~=0)));
FC((AP==0) & (F~=0)) = 0;
FC(F~=0) = FC(F~=0)./(1+FC(F~=0));
FD = zeros(1,size(C,2));
FD(F~=0) = CI(F~=0)./(FC(F~=0).*(AP(F~=0).^(1-1./M(F~=0)))+(1-FC(F~=0)).*(CH(F~=0).^(1-1./M(F~=0)))).^(1./(1-1./M(F~=0)));
FE = zeros(1,size(C,2));
FE(G~=0) = 1./(1+AV(G~=0)./DK(G~=0).*((AQ(G~=0)./CH(G~=0)).^(1./N(G~=0))));
FE((CH==0)&(G~=0)) = 0;
FE(H~=0) = 0;
FE(5) = 0;
FG = [1 1 1 1 0 0 0 0 0 0 0 0];
FH = zeros(1,size(C,2));
FH(FG~=0) = FO0(FG~=0)./(DN(FG~=0).*AR(FG~=0));
FH(L~=0) = 0;
FH(end)=0;
FI = (CM.*CL.*CJ)'./(DN.*AR);
FJ = zeros(1,size(C,2));
FJ(L~=0) = (1-FH(L~=0)-sum(FI(:,(L~=0)),1));
FJ(end) = 0;
FK = zeros(1,size(C,2));
FK(E~=0) = (CJ((E~=0),2)'.^FI(2,(E~=0))).*(CJ((E~=0),1)'.^FI(1,(E~=0))).*(AT(E~=0).^FH(E~=0)).*(AU(E~=0).^FJ(E~=0)).*(BS.^O(E~=0));
FK(end) = (CJ(end,2)^FI(2,end))*(CJ(end,1)^FI(1,end))*(BS^O(end));
FL = AR./FK;
FM = sum((AR.*DN.*FI)'./(CM.*CL));
FM(CM==0) = 0;
FN = zeros(1,size(C,2));
FN(G~=0) = AR(G~=0)./(FE(G~=0).*(AQ(G~=0).^(1+1./N(G~=0)))+(1-FE(G~=0)).*(CH(G~=0).^(1+1./N(G~=0)))).^(1./(1+(1./N(G~=0))));
FN((FE==0)&(G~=0)) = 0;
FO0 = FH.*AR.*DN;
FP0 = BC-FO0-sum(CL.*CM.*CJ,2)';
FQ = zeros(1,size(C,2));
FQ(L~=0) = (FP0(L~=0)-BA(L~=0))./AU(L~=0);
FR = sum(FP0(L~=0)-BA(L~=0))./sum(AU(L~=0));
FS = FR;
FT = (BK*CB)./sum((FQ(L~=0)+DE(L~=0)).*(DI(L~=0).*AU(L~=0)));
FU = (FS-W)/(FT^X);
FV = FV/BK;
FW = sum(DN.*AR);
FX = sum(AR-DC);
FY = FW/FX;
FZ = CA;
GA = [1 1 0 0 0 0 0 0];
GB = [0 0 1 1 0 0 0 0];
GC = zeros(1,size(R,2));
GC(1) = BE(1)./sum(BE(GA~=0));
GC(2) = 1-GC(1);
GC(3) = BE(3)./sum(BE(GB~=0));
GC(4) = 1-GC(3);
GD = zeros(1,size(R,2));
GD(1) = sum((AE(EG~=0,1))+(GC(1).*FO0(EG~=0))');
GD(2) = sum((AE(EG~=0,2))+(GC(2).*FO0(EG~=0))');
GD(3) = sum((AE(EH~=0,1))+(GC(3).*FO0(EH~=0))');
GD(4) = sum((AE(EH~=0,2))+(GC(4).*FO0(EH~=0))');
GD(5) = sum(AE(EI~=0,1));
GD(6) = sum(AE(EI~=0,2));
GD(7) = sum(BC(E~=0))-sum(sum(AE(E~=0,:)))-sum(FO0(E~=0))+sum((CN(:,1))+(CO(:,1))+sum(CP(:,AI~=0),2))-BK*CB;
GE = zeros(1,size(R,2));
GE(AI~=0) = BG(AI~=0)./GD(AI~=0);
GF = zeros(1,size(R,2));
GF(AI~=0) = GD(AI~=0).*(1-GE(AI~=0))+BI(AI~=0)+BJ(AI~=0)+BK.*CD(AI~=0);
GG = zeros(1,size(R,2));
GG(AI~=0) = BH(AI~=0)./GF(AI~=0);
GH = zeros(1,size(R,2));
GH(7) = U;
GH(1)=sum(CJ(EG~=0,1)./(sum(CK).*(1+GH(7))));
GH(2)=sum(CJ(EG~=0,2)./(sum(CK).*(1+GH(7))));
GH(3)=sum(CJ(EH~=0,1)./(sum(CK).*(1+GH(7))));
GH(4)=sum(CJ(EH~=0,2)./(sum(CK).*(1+GH(7))));
GH(5)=sum(CJ(EI~=0,1)./(sum(CK).*(1+GH(7))));
GH(6)=sum(CJ(EI~=0,2)./(sum(CK).*(1+GH(7))));
GI = sum(AY0);
GJ = sum(EQ(E~=0).*DL(E~=0));
GK = sum(ER(D~=0).*DM(D~=0));
GL = zeros(1,size(R,2));
GL(AI~=0) = sum((ES(E~=0,AI~=0)).*EL(E~=0,AI~=0));
GM = sum(GH(AI~=0).*GL(AI~=0));
GN = zeros(1,size(R,2));
GN(AI~=0) = sum(EO(D~=0,AI~=0).*(EK(D~=0,AI~=0)-EM(D~=0,AI~=0)).^(1-1./T(AI~=0))).^(1./(1-1./T(AI~=0)));
GO = sum(AR(EH~=0));
GP = sum(sum(CJ(EH~=0,:)));
GQ = zeros(1,size(C,2));
GR = [0 1 0 1 0 0 0 0 0 0 0 0];
GQ(GR~=0) = 1;
GS = zeros(1,size(C,2));
GS(2) = FL(2)/FL(1);
GS(4) = FL(4)/FL(3);
GT = zeros(1,size(C,2));
GT(GR~=0) = 1./(2.*GS(GR~=0)-1);
GU = zeros(1,size(C,2));
GV(GR~=0) = (1-(1-GT(GR~=0)).*(atan(GQ(GR~=0).^(-P(GR~=0))))./(pi/2));
GW = zeros(1,size(C,2));
GW(GR~=0) = FL(GR~=0)./GU(GR~=0);
GS(6) = FL(6)/FL(7);
GS(8) = FL(8)/FL(9);
GS(10) = FL(10)/FL(11);
GX = [0 0 0 0 0 1 0 1 0 1 0 0];
GQ(GX~=0) = (tan((1-GS(GX~=0)).*(pi/2))).^(-1./P(GX~=0));
GU(GX~=0) = (1-(atan(GQ(GX~=0).^(-P(GX~=0))))/(pi/2));
GW(GX~=0) = FL(GX~=0)./GU(GX~=0);
DJ(F==0) = 0;
DK(G==0) = 0;
DI(L==0) = 0;
GY = CX;
EL = EL(D~=0,AI~=0); CX = CX(D~=0,AI~=0); EM = EM(D~=0,AI~=0);
GZ = EK;
EK = EK(D~=0,AI~=0);
x0 = [AV DJ(F~=0) DK(G~=0) DI(L~=0) DL DM EL(:)' DN FY GJ GK GL(AI~=0) GM CI AR CH AQ AP CL CJ(:)' FO0(FG~=0) FP0(L~=0) FQ(L~=0) FR DH(L~=0) FS CB CA EB(F~=0) ED(G~=0),...
CX(:)' DC EM(:)' EK(:)' AY0(E~=0) FW FX GD(AI~=0) GF(AI~=0) BL BW BX BY BZ DP BG(AI~=0) BM BH(AI~=0) DF BQ BU AZ0(L~=0) BA(L~=0)];
xss = @(x)Code_Answers_fun(x,FD,FL,V,FV,O,FJ,FI,FH,FN,Y,Z,GZ,EO,FC,DE,BJ,BT,AZ0,CF,GE,X,M,N,BK,FZ,CE,FT,DQ,FE,BB,EJ,GH,C,D,AY0,L,F,DD,H,FG,I,J,DB,CZ,E,EG,CW,EI,G,K,EH,AI,...
BS,AU,Q,AT,A,GC,CK,DT,DS,DR,DW,DV,DU,GG,FB,FA,EZ,EW,EU,FU,EF,DO,EE,DZ,DY,DX,FP0,CD,FO0,W,S,T,GY,EC,EA,BI,ES,CM,EQ,ER);
options = optimoptions('fsolve','Display','iter');
[xss,x] = fsolve(xss,x0,options);
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
function [xss, xout] = Code_Answers_fun(x,FD,FL,V,FV,O,FJ,FI,FH,FN,Y,Z,GZ,EO,FC,DE,BJ,BT,AZ0,CF,GE,X,M,N,BK,FZ,CE,FT,DQ,FE,BB,EJ,GH,C,D,AY0,CJ,F,DD,H,FG,I,J,DB,CZ,E,EG,CW,EI,...
G,K,EH,AI,BS,AU,Q,AT,A,GC,CK,DT,DS,DR,DW,DV,DU,GG,FB,FA,EZ,EW,EU,FU,EF,DO,EE,DZ,DY,DX,FP0,CD,FO0,W,S,T,GY,EC,EA,BI,ES,CM,EQ,ER)
% A. Endogenous variables
AV = x(1:size(C,2)); CT = size(C,2);
DJ = x(CT+1:CT+size(F(F~=0),2)); CT = CT+size(F(F~=0),2);
DK = x(CT+1:CT+size(G(G~=0),2)); CT = CT+size(G(G~=0),2);
DI = x(CT+1:CT+size(CJ(CJ~=0),2)); CT = CT+size(CJ(CJ~=0),2);
DL = x(CT+1:CT+size(C,2)); CT = CT+size(C,2);
DM = x(CT+1:CT+size(C,2)); CT = CT+size(C,2);
EL = x(CT+1:CT+size(D(D~=0),2)*size(AI(AI~=0),2)); CT = CT+size(D(D~=0),2)*size(AI(AI~=0),2);
DN = x(CT+1:CT+size(C,2)); CT = CT+size(C,2);
FY = x(CT+1); CT = CT+1;
GJ = x(CT+1); CT = CT+1;
GK = x(CT+1); CT = CT+1;
GL = x(CT+1:CT+size(AI(AI~=0),2)); CT = CT+size(AI(AI~=0),2);
GM = x(CT+1); CT = CT+1;
CI = x(CT+1:CT+size(C,2)); CT = CT+size(C,2);
AR = x(CT+1:CT+size(C,2)); CT = CT+size(C,2);
CH = x(CT+1:CT+size(C,2)); CT = CT+size(C,2);
AQ = x(CT+1:CT+size(C,2)); CT = CT+size(C,2);
AP = x(CT+1:CT+size(C,2)); CT = CT+size(C,2);
CL = x(CT+1:CT+size(A,2)); CT = CT+size(A,2);
BOH = x(CT+1:CT+size(C,2)*size(A,2)); CT = CT+size(C,2)*size(A,2);
FO = x(CT+1:CT+size(FG(FG~=0),2)); CT = CT+size(FG(FG~=0),2);
FP = x(CT+1:CT+size(CJ(CJ~=0),2)); CT = CT+size(CJ(CJ~=0),2);
FQ = x(CT+1:CT+size(CJ(CJ~=0),2)); CT = CT+size(CJ(CJ~=0),2);
FR = x(CT+1); CT = CT+1;
DH = x(CT+1:CT+size(CJ(CJ~=0),2)); CT = CT+size(CJ(CJ~=0),2);
FS = x(CT+1); CT = CT+1;
CB = x(CT+1); CT = CT+1;
CA = x(CT+1); CT = CT+1;
EB = x(CT+1:CT+size(F(F~=0),2)); CT = CT+size(F(F~=0),2);
ED = x(CT+1:CT+size(G(G~=0),2)); CT = CT+size(G(G~=0),2);
CX = x(CT+1:CT+size(D(D~=0),2)*size(AI(AI~=0),2)); CT = CT+size(D(D~=0),2)*size(AI(AI~=0),2);
DC = x(CT+1:CT+size(C,2)); CT = CT+size(C,2);
EM = x(CT+1:CT+size(D(D~=0),2)*size(AI(AI~=0),2)); CT = CT+size(D(D~=0),2)*size(AI(AI~=0),2);
EK = x(CT+1:CT+size(D(D~=0),2)*size(AI(AI~=0),2)); CT = CT+size(D(D~=0),2)*size(AI(AI~=0),2);
AY = x(CT+1:CT+size(E(E~=0),2)); CT = CT+size(E(E~=0),2);
FW = x(CT+1); CT = CT+1;
FX = x(CT+1); CT = CT+1;
GD = x(CT+1:CT+size(AI(AI~=0),2)); CT = CT+size(AI(AI~=0),2);
GF = x(CT+1:CT+size(AI(AI~=0),2)); CT = CT+size(AI(AI~=0),2);
BL = x(CT+1); CT = CT+1;
BW = x(CT+1); CT = CT+1;
BX = x(CT+1); CT = CT+1;
BY = x(CT+1); CT = CT+1;
BZ = x(CT+1); CT = CT+1;
DP = x(CT+1); CT = CT+1;
BG = x(CT+1:CT+size(AI(AI~=0),2)); CT = CT+size(AI(AI~=0),2);
BM = x(CT+1); CT = CT+1;
BH = x(CT+1:CT+size(AI(AI~=0),2)); CT = CT+size(AI(AI~=0),2);
DF = x(CT+1); CT = CT+1;
BQ = x(CT+1); CT = CT+1;
BU = x(CT+1); CT = CT+1;
AZ = x(CT+1:CT+size(CJ(CJ~=0),2)); CT = CT+size(CJ(CJ~=0),2);
BA = x(CT+1:CT+size(CJ(CJ~=0),2));
% B. Parameters
CZ(6,1) = 1+GY(6,1);
CZ(8,1) = 1+GY(8,1);
CZ(10,1) = 1+GY(10,1);
CZ(6,1) = 1+GY(6,2);
CZ(8,1) = 1+GY(8,2);
CZ(10,1) = 1+GY(10,2);
CZ(1,2) = 1+GY(1,3);
CZ(7,2) = 1+GY(7,3);
CZ(9,2) = 1+GY(9,3);
CZ(11,2) = 1+GY(11,3);
CZ(1,2) = 1+GY(1,4);
CZ(7,2) = 1+GY(7,4);
CZ(9,2) = 1+GY(9,4);
CZ(11,2) = 1+GY(11,4);
CZ(8,3) = 1+GY(8,1);
CZ(10,3) = 1+GY(10,1);
CZ(8,3) = 1+GY(8,2);
CZ(10,3) = 1+GY(10,2);
CZ(9,4) = 1+GY(9,3);
CZ(11,4) = 1+GY(11,3);
CZ(9,4) = 1+GY(9,4);
CZ(11,4) = 1+GY(11,4);
CZ(1,6) = 1+GY(1,3);
CZ(3,6) = 1+GY(3,3);
CZ(1,6) = 1+GY(1,4);
CZ(3,6) = 1+GY(3,4);
CZ(4,7) = 1+GY(4,5);
CZ(6,7) = 1+GY(6,5);
CZ(4,7) = 1+GY(4,6);
CZ(6,7) = 1+GY(6,6);
CZ(1,8) = 1+GY(1,3);
CZ(1,8) = 1+GY(1,4);
CZ(2,9) = 1+GY(2,5);
CZ(8,9) = 1+GY(8,5);
CZ(10,9) = 1+GY(10,5);
CZ(2,9) = 1+GY(2,6);
CZ(8,9) = 1+GY(8,6);
CZ(10,9) = 1+GY(10,6);
CZ(1,10) = 1+GY(1,3);
CZ(9,10) = 1+GY(9,3);
CZ(11,10) = 1+GY(11,3);
CZ(1,10) = 1+GY(1,4);
CZ(9,10) = 1+GY(9,4);
CZ(11,10) = 1+GY(11,4);
CZ(2,11) = 1+GY(2,5);
CZ(6,11) = 1+GY(6,5);
CZ(8,11) = 1+GY(8,5);
CZ(10,11) = 1+GY(10,5);
CZ(2,11) = 1+GY(2,6);
CZ(6,11) = 1+GY(6,6);
CZ(8,11) = 1+GY(8,6);
CZ(10,11) = 1+GY(10,6);
% C. Additional constraints
AP(I~=0) = 0;
AQ(J~=0) = 0;
AQ(H~=0) = 0;
GZ(end,AI~=0) = 0;
GZ(3,AI~=0) = 0;
GZ(4,AI~=0) = 0;
GZ(5,AI~=0) = 0;
GZ(7,1) = 0;
GZ(7,2) = 0;
GZ(7,3) = 0;
GZ(7,4) = 0;
GZ(9,1) = 0;
GZ(9,2) = 0;
GZ(11,1) = 0;
GZ(11,2) = 0;
FO(CJ~=0) = 0;
AT(CJ~=0) = 0;
AU(FG~=0) = 0;
%FP(FG~=0) = 0;
MAT = [W W+FU.*FT.^X];
% 'REFILL' SOME MATRICES (when inputs are subsets but whole sets are
% required later on in the code)
PMFULL = [1 1 1 1 1 1 1 1 1 1 1 1];
PEFULL = [1 1 1 1 1 1 1 1 1 1 1 1];
PKFULL = [1 1 1 1 1 1 1 1 1 1 1 1];
RSFULL = FO0;
RKFULL = FP0;
DKFULL = AZ0;
IDFULL = AY0;
% RESHAPE MATRICES (that have been 'flattened out' into vectors at the
% beginning of this file)
BOH = reshape(BOH,[12 2]);
EL = reshape(EL, [10 7]);
CX = reshape(CX, [10 7]);
EM = reshape(EM, [10 7]);
EK = reshape(EK, [10 7]);
% Equations
xss1 = DJ-EE(F~=0).*BK.*(1+EA(F~=0)).*(1+EB); xss{1} = xss1;
xss2 = DK-EF(G~=0).*BK.*(1-EC(G~=0)).*(1-ED); xss{2} = xss2;
PLACE = DL.*AR-AV.*CH-PEFULL.*AQ; PLACE(G==0) = (DL(G==0).*AR(G==0)-AV(G==0).*CH(G==0));
xss3 = PLACE; xss{3} = xss3;
xss4 = DL(E~=0)-DN(E~=0)-sum(CZ(E~=0,E~=0).*DB(E~=0,E~=0).*DM(E~=0)',1); xss{4} = xss4;
xss5 = DN(end) - sum(CL.*CM(end,:).*BOH(end,:),2)./ AR(end); xss{5} = xss5;
PLACE = DM.*CI-AV.*CH-PMFULL.*AP; PLACE(F==0) = DM(F==0).*CI(F==0)-AV(F==0).*CH(F==0); PLACE(D==0) = [];
xss6 = PLACE; xss{6} = xss6;
xss7 = DI(1:end)-sum(DM(E~=0).*DD(E~=0,CJ~=0)',2)'; xss{7} = xss7;
xss8 = PKFULL(end)-sum(DM(E~=0).*(DD(E~=0,end)'),2); xss{8} = xss8;
PLACE = EL-(1+CX).*(1+CW(D~=0,AI~=0)).*DM(D~=0)'; PLACE = PLACE(:)';
xss9 = PLACE; xss{9} = xss9;
xss10 = GJ-sum(EQ.*DL); xss{10} = xss10;
xss11 = GK-sum(ER(D~=0).*DM(D~=0)); xss{11} = xss11;
xss12 = GL-sum(ES(D~=0,AI~=0).*EL,1); xss{12} = xss12;
xss13 = GM-sum(GH(AI~=0).*GL(AI~=0)); xss{13} = xss13;
xss14 = FY-(FW./FX); xss{14} = xss14;
xss15 = AR-FL.*AT.^FH.*prod(BOH'.^FI).*AU.^FJ.*BS.^O; xss{15} = xss15;
PLACE = CL.*CM.*BOH-AR'.*DN'.*(FI)'; PLACE = PLACE(:)';
xss16 = PLACE; xss{16} = xss16;
xss17 = sum(BOH,1)-CK; xss{17} = xss17;
xss18 = AR(K~=0)-FN(K~=0).*(FE(K~=0).*AQ(K~=0).^(1+1./N(K~=0))+(1-FE(K~=0)).*CH(K~=0).^(1+1./N(K~=0))).^(1./(1+1./N(K~=0))); xss{18} = xss18;
xss19 = AQ(K~=0)./CH(K~=0)-(PEFULL(K~=0)./AV(K~=0).*(1-FE(K~=0))./FE(K~=0)).^(N(K~=0)); xss{19} = xss19;
xss20 = CI(F~=0)-FD(F~=0).*(FC(F~=0).*AP(F~=0).^(1-1./M(F~=0))+(1-FC(F~=0)).*CH(F~=0).^(1-1./M(F~=0))).^(1./(1-1./M(F~=0))); xss{20} = xss20;
xss21 = AP(F~=0)./CH(F~=0)-(AV(F~=0)./DJ.*FC(F~=0)./(1-FC(F~=0))).^(M(F~=0)); xss{21} = xss21;
xss22 = CH(J~=0)-AR(J~=0); xss{22} = xss22;
xss23 = CI(I~=0)-CH(I~=0); xss{23} = xss23;
xss24 = AR(end)-BB(end); xss{24} = xss24;
xss25 = AR(5)-AQ(5); xss{25} = xss25;
xss26 = RSFULL-FH.*AR.*DN; xss{26} = xss26;
xss27 = RKFULL-DN.*AR+RSFULL+sum(CL.*CM.*BOH,2)'; xss{27} = xss27;
xss28 = FW-sum(DN.*AR); xss{28} = xss28;
xss29 = FX-sum(AR-DC); xss{29} = xss29;
xss30(1) = GD(1)-sum(CL(1).*CM(EG~=0,1).*BOH(EG~=0,1)+GC(1).*RSFULL(EG~=0)');
xss30(2) = GD(2)-sum(CL(2).*CM(EG~=0,2).*BOH(EG~=0,2)+GC(2).*RSFULL(EG~=0)');
xss30(3) = GD(3)-sum(CL(1).*CM(EH~=0,1).*BOH(EH~=0,1)+GC(3).*RSFULL(EH~=0)');
xss30(4) = GD(4)-sum(CL(2).*CM(EH~=0,2).*BOH(EH~=0,2)+GC(4).*RSFULL(EH~=0)');
xss30(5) = GD(5)-sum(CL(1).*CM(EI~=0,1).*BOH(EI~=0,1));
xss30(6) = GD(6)-sum(CL(2).*CM(EI~=0,2).*BOH(EI~=0,2));
xss30(7) = GD(7)-sum(FP)-sum(DX+DY+sum(DZ(:,AI~=0),2))+BY+BK.*CB; xss{30} = xss30;
xss31 = BK.*CB-FT.*sum((FQ+DE(CJ~=0)).*DI(1:end).*AU(CJ~=0)); xss{31} = xss31;
xss32 = GF(AI~=0)-GD(AI~=0).*(1-GE(AI~=0))-BI(AI~=0)-BJ(AI~=0)-BK.*CD(AI~=0); xss{32} = xss32;
xss33 = BH(AI~=0)-GG(AI~=0).*GF(AI~=0); xss{33} = xss33;
xss34 = DC-sum(CZ'.*DB'.*AR',1); xss{34} = xss34;
PLACE = EM-S(D~=0,AI~=0).*EK; PLACE = PLACE(:)';
xss35 = PLACE; xss{35} = xss35;
PLACE = EL.*EK-EL.^(1-T(AI~=0)).*EO(D~=0,AI~=0).^T(AI~=0)./sum(EL.^(1-T(AI~=0)).*EO(D~=0,AI~=0).^T(AI~=0),1).*((1-GG(AI~=0)).*(GF(AI~=0)./EJ(AI~=0))-sum(EL.*EM,1))-EL.*EM; PLACE = PLACE(:)';
xss36 = PLACE; xss{36} = xss36;
xss37 = BL-BW-BZ-BX-BY-sum(BG(AI~=0))+DP; xss{37} = xss37;
xss38 = BM-(DN(end)+sum(CZ(E~=0,end).*DB(E~=0,end).*DM(E~=0)',1)).*BB(end); xss{38} = xss38;
xss39 = BQ-BL+BM+sum(BI(AI~=0))+sum(BJ(AI~=0))+BK.*CE; xss{39} = xss39;
xss40 = BW-sum(EA(F~=0).*AP(F~=0).*EE(F~=0)).*BK; xss{40} = xss40;
xss41 = BX-sum(sum(CW(D~=0,AI~=0).*(1+CX).*EJ(AI~=0).*EK.*DM(D~=0)',1),2); xss{41} = xss41;
xss42 = BY-sum((Q(CJ~=0)./(1+Q(CJ~=0))).*(FP-BA)); xss{42} = xss42;
xss43 = BG(AI~=0)-GD(AI~=0).*GE(AI~=0); xss{43} = xss43;
xss44 = BZ-sum(EC(G~=0).*AQ(G~=0).*BK.*EF(G~=0)); xss{44} = xss44;
xss45 = DP-sum(DQ.*DO.*(DU+DV+sum(DW(:,AI~=0),2))); xss{45} = xss45;
xss46 = FQ-((FP-BA)./(1+Q(CJ~=0)))./(DI(1:end).*AU(CJ~=0)); xss{46} = xss46;
xss47 = FR-sum((FP-BA)./(1+Q(CJ~=0)))./sum(DI(1:end).*AU(CJ~=0)); xss{47} = xss47;
PLACE = max(MAT);
xss48 = FS-PLACE; xss{48} = xss48;
xss49 = BA-DE(CJ~=0).*AU(CJ~=0).*DI(1:end); xss{49} = xss49;
xss50 = DF-sum(BA); xss{50} = xss50;
xss51 = DH-AU(CJ~=0)./sum(AU(CJ~=0)); xss{51} = xss51;
xss52 = DI(1:end).*AZ-DH.*(1+ V.*(FQ-FR)).*(BU+BK.*CA-PKFULL(end).*(DKFULL(end)+BT)); xss{52} = xss52;
xss53 = AY-sum(DD(E~=0,CJ~=0).*AZ,2)'-DD(E~=0,end)'.*(DKFULL(end)+BT); xss{53} = xss53;
xss54 = (EB'-EU(F~=0,3).*DO.*(1-DQ).*DU(F~=0)-EU(F~=0,2).*DR(F~=0)-EU(F~=0,1).*DX(F~=0))'; xss{54} = xss54;
xss55 = (ED'-EW(G~=0,3).*DO.*(1-DQ).*DV(G~=0)-EW(G~=0,2).*DS(G~=0)-EW(G~=0,1).*DY(G~=0))'; xss{55} = xss55;
PLACE = CX-FB(D~=0,AI~=0).*DO.*(1-DQ).*DW(D~=0,AI~=0)-FA(D~=0,AI~=0).*DT(D~=0,AI~=0)-EZ(D~=0,AI~=0).*DZ(D~=0,AI~=0); PLACE = PLACE(:)';
xss56 = PLACE; xss{56} = xss56;
xss57 = CA-FZ-Y.*((FR./FS).^Z-1).*FX./BK; xss{57} = xss57;
xss58 = sum(EE(F~=0).*AP(F~=0))+sum((DO./BK).*(DU+DV+sum(DW(:,AI~=0),2)))+CF+CE+CB-sum(EF(G~=0).*AQ(G~=0))-FV-sum(CD(AI~=0))-CA; xss{58} = xss58;
xss59 = CI-sum(EJ(AI~=0).*GZ(:,AI~=0),2)'-DR'-DS'-sum(DT(:,AI~=0),2)'-DC-IDFULL-BB; xss{59} = xss59;
xss = cell2mat(xss);
% REHSAPE BACK
BOH = BOH(:)';
EL = EL(:)';
CX = CX(:)';
EM = EM(:)';
EK = EK(:)';
xout = [AV DJ DK DI DL DM EL DN FY GJ GK GL GM CI AR CH AQ AP CL BOH FO FP FQ FR DH FS CB CA EB ED CX DC EM EK AY FW FX GD GF BL BW BX BY BZ DP BG BM BH DF BQ BU AZ BA];

채택된 답변

Walter Roberson
Walter Roberson 2021년 8월 2일
Your xout only involves 544 of the 562 variables.
To establish this, change
xss = cell2mat(xss);
to
xss = horzcat(xss{:});
and then put a breakpoint at
[xss,x] = fsolve(xss,x0,options);
When it stops there,
syms XX [1 562]
FUN = xss(XX)
size(FUN) %will be 1 x 562
length(symvar(FUN)) %will be 544
In particular, the unused variables will be
XX48, XX55, XX185, XX186, XX194, XX195, XX196, XX197, XX199, XX200, XX201, XX206, XX207, XX208, XX235, XX236, XX237, XX238
  댓글 수: 2
Mark
Mark 2021년 8월 7일
Hello!
Thank you for your help. I took a few days to work through the implications of what you said, and I think I am close to having fixed the issue. The solver output now finally states
Equation solved.
fsolve completed because the vector of function values is near zero
as measured by the value of the function tolerance, and
the problem appears regular as measured by the gradient.
However, it does not recognise the system as 'square' -- before the first iteration, it gives the following warning:
Warning: Trust-region-dogleg algorithm of FSOLVE cannot handle non-square systems; using
Levenberg-Marquardt algorithm instead.
> In fsolve (line 336)
In Code_Answers (line 800)
Using the code you kindly provided to check for the issue, I found
size(FUN)
to now be 1x554, and
length(symvar(FUN))
to be 553. However, adding the following:
Unused_var = setdiff(XX,symvar(FUN)) % Find unused variables
Unused_var2 = setdiff(symvar(FUN),XX)
I get this:
Unused_var =
Empty sym: 1-by-0
Unused_var2 =
Empty sym: 1-by-0
which confuses me, as I would take it to mean that the two arrays have the same size (which they likely do not, because otherwise the system would be recognised as 'square'!). Where am I still going wrong, and how may I find out where the 'extra' variable is? I am not sharing the code again to avoid cluttering the question, but let me know if you need it to figure out where the issue lies. Thank you very much for your help!
Mark
Mark 2021년 8월 12일
I managed to work it out -- thank you! It was indeed an issue of some variables not being used in the equations.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Formula Manipulation and Simplification에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by