Splitting a 3D inequality into 3 2-D inequalities

조회 수: 2 (최근 30일)
Cédric Cavents
Cédric Cavents 2016년 5월 19일
Hello! Given triplets
(s,k,w)
that satisfy the following inequalities:
s<0 & k>3+11.1282s^2 &
(1/32)(27-3*sqrt(6)+sqrt(111+46*sqrt(6))[(k-3)^2/s]+10s > w >[(k-3)^2/s] + 10s
The following code creates a 3D scatter plot
s = linspace(-20,0,200);
k = linspace(3,200,600);
w = linspace(-500,0,1000);
[S,K,W] = meshgrid(s,k,w);
I = (K>3+1.12577*S.^2) & (W < ((K-3).^2)./S + 10*S) & ( W > (((K-3).^2)./(32*S))*(27+sqrt(111+46*sqrt(6))-3*sqrt(6))+10*S);
scatter3(S(I),K(I),W(I),2)
xlabel('skewness')
ylabel('kurtosis')
zlabel('hyper skewness')
This is great, however It would be better to have an interpolated 3D-surface. Is this possible? I have taken a look into Matlab functions such as 'interp3' and 'griddata' ... However, those kind of Matlab functions require a function that matches the three variables, which I don't have here. Is there a way to interpolate this 3D inequality?
If not, I can also make 3 separated scatter 2D-plots, for instance:
scatter(S(I),K(I),2)
xlabel('Skewness','interpreter','latex');
ylabel('Kurtosis','interpreter','latex');
Same question, how to interpolate the above 2D plot?
Many thanks! Cheers, Cédric

답변 (0개)

카테고리

Help CenterFile Exchange에서 Interpolation에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by