1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| function [X,Y,Z]=SURF(EULER,l)
//Je transforme les données d'angles d'EULER (radians) en directions principales de contraintes (en degrés pour une meilleure visualisation)
XE=EULER(l,1)
YE=EULER(l,2)
ZE=EULER(l,3)
if (ZE<0) then
XE=-XE
YE=-YE
ZE=-ZE
end
a=atan(YE,XE)+%pi()
if ((a.*180./%pi())<0) then
a=(360+a)*%pi()/180
end
if ((a.*180./%pi())>360) then
a=(a-360)*%pi()/180
end
if ((ZE.*180./%pi())<0) then
ZE=-ZE
end
p=asin(ZE)
[x,y]=ProjWulff(a,p) //Il s'agit d'une projection dans un canevas de wulff
X(l)=x
Y(l)=y
Z(l)=EULER(l,5)
endfunction
function SPHERE(EULER)
stacksize('max')
[NL NC]=size(EULER)
NL=NL(1,1)
l=1:NL
[X,Y,Z]=eval3dp(SURF,EULER,l)
scf
f=gcf()
f.color_map=jetcolormap(64)
colorbar(0,1)
plot3d1(X,Y,Z)
contour(X,Y,Z,5)
endfunction |
Partager