Why fsurf show anything for my function?

1 回表示 (過去 30 日間)
Mehdi
Mehdi 2022 年 9 月 19 日
編集済み: Torsten 2022 年 9 月 19 日
I have a two variable symbolic function. I want to plot it through fsurf, but nothing happened. Where is the problem?
clear
syms eta__2 zeta__2
Hvs2 =((2305843009213693952*(eta__2 - 8331386150863307/9007199254740992)^2)/4468747621300827 + zeta__2^2 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627358085/4503599627370496)^2)/2464427449 + (9223372036854775808*(zeta__2 + 8874786567161339/9007199254740992)^2)/1993284949101825 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627368287/4503599627370496)^2)/78092569 + (144115188075855872*(zeta__2 + 5839205668947691/36028797018963968)^2)/2587820009746145 - 1)*((324518553658426726783156020576256*(eta__2 - 4503599627333911/4503599627370496)^2)/21415688281 + (4503599627370496*(zeta__2 - 1882639988738625/2251799813685248)^2)/73228201827365 - 1)*((576460752303423488*(zeta__2 - 4078517724083247/4503599627370496)^2)/2165235226682789 + (81129638414606681695789005144064*(eta__2 + 9007199254726729/9007199254740992)^2)/203433169 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627367767/4503599627370496)^2)/119137225 + (288230376151711744*(zeta__2 - 8379468112984681/18014398509481984)^2)/4538947610255513 - 1)*((324518553658426726783156020576256*(eta__2 + 1125899906841383/1125899906842624)^2)/394300449 + (288230376151711744*(zeta__2 + 3274236097988363/4503599627370496)^2)/2892513115795259 - 1)*((79228162514264337593543950336*(eta__2 - 281474976710133/281474976710656)^2)/273529 + (73786976294838206464*(zeta__2 + 8920499049153031/9007199254740992)^2)/6836604051381713 - 1);
fsurf(Hvs2,[-1,1,-1,1]);

採用された回答

Matt J
Matt J 2022 年 9 月 19 日
You should normalize the function, so that the default MeshDensity works well.
syms eta__2 zeta__2
Hvs2 =((2305843009213693952*(eta__2 - 8331386150863307/9007199254740992)^2)/4468747621300827 + zeta__2^2 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627358085/4503599627370496)^2)/2464427449 + (9223372036854775808*(zeta__2 + 8874786567161339/9007199254740992)^2)/1993284949101825 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627368287/4503599627370496)^2)/78092569 + (144115188075855872*(zeta__2 + 5839205668947691/36028797018963968)^2)/2587820009746145 - 1)*((324518553658426726783156020576256*(eta__2 - 4503599627333911/4503599627370496)^2)/21415688281 + (4503599627370496*(zeta__2 - 1882639988738625/2251799813685248)^2)/73228201827365 - 1)*((576460752303423488*(zeta__2 - 4078517724083247/4503599627370496)^2)/2165235226682789 + (81129638414606681695789005144064*(eta__2 + 9007199254726729/9007199254740992)^2)/203433169 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627367767/4503599627370496)^2)/119137225 + (288230376151711744*(zeta__2 - 8379468112984681/18014398509481984)^2)/4538947610255513 - 1)*((324518553658426726783156020576256*(eta__2 + 1125899906841383/1125899906842624)^2)/394300449 + (288230376151711744*(zeta__2 + 3274236097988363/4503599627370496)^2)/2892513115795259 - 1)*((79228162514264337593543950336*(eta__2 - 281474976710133/281474976710656)^2)/273529 + (73786976294838206464*(zeta__2 + 8920499049153031/9007199254740992)^2)/6836604051381713 - 1);
fsurf(Hvs2/1e168,[-1,1,-1,1])

その他の回答 (1 件)

Torsten
Torsten 2022 年 9 月 19 日
編集済み: Torsten 2022 年 9 月 19 日
Is this an explanation ?
clear
syms eta__2 zeta__2
Hvs2 =((2305843009213693952*(eta__2 - 8331386150863307/9007199254740992)^2)/4468747621300827 + zeta__2^2 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627358085/4503599627370496)^2)/2464427449 + (9223372036854775808*(zeta__2 + 8874786567161339/9007199254740992)^2)/1993284949101825 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627368287/4503599627370496)^2)/78092569 + (144115188075855872*(zeta__2 + 5839205668947691/36028797018963968)^2)/2587820009746145 - 1)*((324518553658426726783156020576256*(eta__2 - 4503599627333911/4503599627370496)^2)/21415688281 + (4503599627370496*(zeta__2 - 1882639988738625/2251799813685248)^2)/73228201827365 - 1)*((576460752303423488*(zeta__2 - 4078517724083247/4503599627370496)^2)/2165235226682789 + (81129638414606681695789005144064*(eta__2 + 9007199254726729/9007199254740992)^2)/203433169 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627367767/4503599627370496)^2)/119137225 + (288230376151711744*(zeta__2 - 8379468112984681/18014398509481984)^2)/4538947610255513 - 1)*((324518553658426726783156020576256*(eta__2 + 1125899906841383/1125899906842624)^2)/394300449 + (288230376151711744*(zeta__2 + 3274236097988363/4503599627370496)^2)/2892513115795259 - 1)*((79228162514264337593543950336*(eta__2 - 281474976710133/281474976710656)^2)/273529 + (73786976294838206464*(zeta__2 + 8920499049153031/9007199254740992)^2)/6836604051381713 - 1);
value_at_0 = double(subs(Hvs2,[eta__2,zeta__2],[0 0]))
value_at_0 = 9.4583e+167
fsurf(Hvs2,[-1,1,-1,1]);
  3 件のコメント
Mehdi
Mehdi 2022 年 9 月 19 日
編集済み: Mehdi 2022 年 9 月 19 日
how to get rid of rational numbers in equation? (e,g. 8331386150863307/9007199254740992) and convert equation to decimal. (0.9250). this will make more simplify eq.
Torsten
Torsten 2022 年 9 月 19 日
編集済み: Torsten 2022 年 9 月 19 日
syms eta__2 zeta__2
Hvs2 =((2305843009213693952*(eta__2 - 8331386150863307/9007199254740992)^2)/4468747621300827 + zeta__2^2 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627358085/4503599627370496)^2)/2464427449 + (9223372036854775808*(zeta__2 + 8874786567161339/9007199254740992)^2)/1993284949101825 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627368287/4503599627370496)^2)/78092569 + (144115188075855872*(zeta__2 + 5839205668947691/36028797018963968)^2)/2587820009746145 - 1)*((324518553658426726783156020576256*(eta__2 - 4503599627333911/4503599627370496)^2)/21415688281 + (4503599627370496*(zeta__2 - 1882639988738625/2251799813685248)^2)/73228201827365 - 1)*((576460752303423488*(zeta__2 - 4078517724083247/4503599627370496)^2)/2165235226682789 + (81129638414606681695789005144064*(eta__2 + 9007199254726729/9007199254740992)^2)/203433169 - 1)*((324518553658426726783156020576256*(eta__2 + 4503599627367767/4503599627370496)^2)/119137225 + (288230376151711744*(zeta__2 - 8379468112984681/18014398509481984)^2)/4538947610255513 - 1)*((324518553658426726783156020576256*(eta__2 + 1125899906841383/1125899906842624)^2)/394300449 + (288230376151711744*(zeta__2 + 3274236097988363/4503599627370496)^2)/2892513115795259 - 1)*((79228162514264337593543950336*(eta__2 - 281474976710133/281474976710656)^2)/273529 + (73786976294838206464*(zeta__2 + 8920499049153031/9007199254740992)^2)/6836604051381713 - 1)
Hvs2 = 
Hvs2 = vpa(Hvs2)
Hvs2 = 
value_at_0 = double(subs(Hvs2,[eta__2,zeta__2],[0 0]))
value_at_0 = 9.4583e+167
fsurf(Hvs2,[-1,1,-1,1]);

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeAssumptions についてさらに検索

タグ

製品


リリース

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by