From 801d469e064813c6ea70f8baae850a3447b09ab6 Mon Sep 17 00:00:00 2001 From: ageay Date: Mon, 16 Jul 2012 15:25:22 +0000 Subject: [PATCH] Doc #4 --- doc/doxygen/figures/MEDFileConcepts.fig | 85 ++++++++++ doc/doxygen/figures/MEDFileConcepts.png | Bin 0 -> 16178 bytes doc/doxygen/medcoupling.dox | 2 +- doc/doxygen/medloader.dox | 208 ++++++++++++++++++------ 4 files changed, 247 insertions(+), 48 deletions(-) create mode 100644 doc/doxygen/figures/MEDFileConcepts.fig create mode 100644 doc/doxygen/figures/MEDFileConcepts.png diff --git a/doc/doxygen/figures/MEDFileConcepts.fig b/doc/doxygen/figures/MEDFileConcepts.fig new file mode 100644 index 000000000..3dbd216fa --- /dev/null +++ b/doc/doxygen/figures/MEDFileConcepts.fig @@ -0,0 +1,85 @@ +#FIG 3.2 Produced by xfig version 3.2.5b +Landscape +Center +Inches +Letter +110.00 +Single +-2 +1200 2 +6 675 675 3075 4650 +2 2 0 1 0 2 50 -1 30 0.000 0 0 -1 0 0 5 + 675 675 3075 675 3075 4650 675 4650 675 675 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 2 + 675 1275 3075 1275 +4 0 0 50 -1 0 16 0.0000 4 225 975 900 1650 (1) name\001 +4 0 0 50 -1 0 16 0.0000 4 225 1635 900 1950 (1) coordinates\001 +4 0 0 50 -1 0 16 0.0000 4 225 1185 1275 2250 (?) fam ids\001 +4 0 0 50 -1 0 16 0.0000 4 225 1305 1275 2550 (?) numbers\001 +4 0 0 50 -1 0 16 0.0000 4 240 2010 900 2850 (*) geometric type\001 +4 0 0 50 -1 0 16 0.0000 4 240 1725 1275 3150 (1) connectivity\001 +4 0 0 50 -1 0 16 0.0000 4 225 1200 1275 3450 (1) fam ids\001 +4 0 0 50 -1 0 16 0.0000 4 225 1320 1275 3750 (1) numbers\001 +4 0 0 50 -1 0 16 0.0000 4 225 1275 900 4050 (+) families\001 +4 0 0 50 -1 0 16 0.0000 4 240 1125 900 4350 (*) groups\001 +4 0 0 50 -1 14 24 0.0000 4 240 960 1425 1125 MESH\001 +-6 +6 9450 675 11625 2100 +2 2 0 1 0 6 50 -1 30 0.000 0 0 -1 0 0 5 + 9450 675 11625 675 11625 2100 9450 2100 9450 675 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 2 + 9450 1200 11625 1200 +4 0 0 50 -1 0 16 0.0000 4 225 975 9825 1650 (1) name\001 +4 0 0 50 -1 0 16 0.0000 4 225 705 9825 1950 (1) ids\001 +4 0 0 50 -1 14 24 0.0000 4 240 1680 9750 1050 PROFILE\001 +-6 +6 9450 2550 12525 4875 +2 2 0 1 0 29 50 -1 28 0.000 0 0 -1 0 0 5 + 9450 2550 12525 2550 12525 4875 9450 4875 9450 2550 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 2 + 9450 3150 12525 3150 +4 0 0 50 -1 0 16 0.0000 4 225 975 9825 3525 (1) name\001 +4 0 0 50 -1 0 16 0.0000 4 225 1515 9825 3825 (1) dimension\001 +4 0 0 50 -1 0 16 0.0000 4 240 2250 9825 4125 (1) number of points\001 +4 0 0 50 -1 0 16 0.0000 4 225 1860 9825 4425 (1) reference cell\001 +4 0 0 50 -1 0 16 0.0000 4 240 1230 9825 4725 (1) weights\001 +4 0 0 50 -1 14 24 0.0000 4 240 2880 9525 2925 LOCALIZATION\001 +-6 +6 4425 675 8025 6000 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 2 + 4425 1200 8025 1200 +2 2 0 1 0 3 50 -1 30 0.000 0 0 -1 0 0 5 + 4425 675 8025 675 8025 6000 4425 6000 4425 675 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 2 + 4425 1275 8025 1275 +4 0 0 50 -1 0 16 0.0000 4 225 975 4650 1650 (1) name\001 +4 0 0 50 -1 0 16 0.0000 4 240 2250 5025 2550 (1) component name\001 +4 0 0 50 -1 0 16 0.0000 4 225 1470 5025 2850 (1) unit name\001 +4 0 0 50 -1 0 16 0.0000 4 240 1485 4650 3150 (*) time steps\001 +4 0 0 50 -1 0 16 0.0000 4 225 1290 5025 3450 (1) iteration\001 +4 0 0 50 -1 0 16 0.0000 4 225 960 5025 3750 (1) order\001 +4 0 0 50 -1 0 16 0.0000 4 225 870 5025 4050 (1) time\001 +4 0 0 50 -1 0 16 0.0000 4 240 2430 5025 4350 (*) per geometric type\001 +4 0 0 50 -1 0 16 0.0000 4 240 2010 5325 4650 (1) geometric type\001 +4 0 0 50 -1 0 16 0.0000 4 240 2280 5325 4950 (+) per discretization\001 +4 0 0 50 -1 0 16 0.0000 4 225 1080 5700 5250 (1) values\001 +4 0 0 50 -1 14 24 0.0000 4 240 1200 5550 1125 FIELD\001 +4 0 0 50 -1 0 16 0.0000 4 240 2565 4650 2250 (+) info on components\001 +4 0 2 10 -1 0 16 0.0000 4 225 1620 4650 1950 (1) mesh name\001 +4 0 6 10 -1 0 16 0.0000 4 240 1755 5700 5550 (?) profile name\001 +4 0 29 10 -1 0 16 0.0000 4 225 2295 5700 5850 (?) localization name\001 +-6 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 1 + 8850 4200 +2 1 0 4 4 7 50 -1 -1 0.000 0 0 -1 1 1 4 + 1 1 2.00 120.00 120.00 + 1 1 2.00 120.00 120.00 + 4500 1875 3825 1875 3825 1575 2025 1575 +2 1 0 4 4 7 50 -1 -1 0.000 0 0 -1 1 1 4 + 1 1 2.00 120.00 120.00 + 1 1 2.00 120.00 120.00 + 9675 1575 8550 1575 8550 5475 7575 5475 +2 1 0 4 4 7 50 -1 -1 0.000 0 0 -1 1 1 4 + 1 1 2.00 120.00 120.00 + 1 1 2.00 120.00 120.00 + 9825 3450 9000 3450 9000 5775 8025 5775 diff --git a/doc/doxygen/figures/MEDFileConcepts.png b/doc/doxygen/figures/MEDFileConcepts.png new file mode 100644 index 0000000000000000000000000000000000000000..466ce594befd55383e2aa7900a06dbd6cb5fcf5b GIT binary patch literal 16178 zcmeIZS5#A9w?4cn3JQXVv`|D*q&MkB6d@>0DJn&JmEKE269JWu^r{eg3%!IYNRb{0 zorES3X`xra|MvI3=ReN)&N&y~#dq_KbCHof)>?b-wbz=@EYF zTR+t}ps95qOu!jvPS~AMsR}Dx1KMbl@f@TzHoI{IEzf%>FP}@9tKBR=#Ge-oHtWVI zcA(en1?=DA;KLK(v=>FI0K|lB{n6I9=tL!3%<1oQ!HA*tKi`OeNuBP857dJ{%kVAx z#2x83`RqA7P}t0^CVc;+ZqWXwTCJ{4ND@{TT$4tj)%}juZ%{j6=g1=gw~o`&O!5t% zVDnQdWPZmgreTel(1M*UV!gv9oPr#*5ck#Wy8|y;vx$HCeP_PeS>FXWSX(nfugYGD z@=idr+J}41^W&NtWqpEC74m``*m#PZv+GX7pVL(crNzaI0?YiPT71JHtcLs$D|JIP z3FfHCQ%Eb)$tO^9dTjODb?ff0+As63-h^<^Dz$tcZ+bUx^Hb$g2_9c{eR^%JGU;tm zIRiPvjP}0dA`z#(MHNM33$x1eEjzx?saa3kNos{e`(tnJP%ij~720LXVEdi=U#v6) zH~W*vXE~fgEInwii+vK3ekZbVOlqVtS6uhnFmW>?r;(=7hEi@zKN0m%YS|8Wo%t9q zhV08*HkheIqPyw^?BWo#^kU|7?oWuh=l&eNRx7qsP->g8fw6?+u4hO$x{@0-`NYX( zAvNbVUt=E^%pT>d8nzi(mC=~WT@}(R>K2}%ZE&T&Q?!{1*<`F>9z6BDxY9AaBIy?i z1bTQsRzGR^g*V*gHQit)#?B}6$on=JYwiW_cGQ`y3l17RT8o@^4TeD;P|BGpy8v~F z)f><6B2`X2z^q4K5}wQN z&FG`|j0cyywOht;)k*NNP38(tfZjO1Dk@Uj{6N8q(1rhOYf3pCnTe(wZ=+~9W7Q~I zPrNtQ7PLn1z(uhA<-&(5Imczqb@Vx;LkzeOY+2Wb)0(IUt5KApRYWEPjO6W+0iOl2 zz=Vd_ST=P4>A{v(a*5uEk?YNi9GBhfm4whj_{5HsJVO9CPr6_x_5FR6WhprmQZOh!?!gKEaTuroku(2Zp+fTnq#*F66&LeFmQ7 z1OS=uj@Zrpa-aaP)eTw8hmEw7F=kx`fJbbFG~kUse|vzR>aYP`@!e$pjSte+&3Bk4 zDFOm93s@oQ!yK=U-)`H`$C3}JQ>$elPB%$qZ(WF8k_BH4-uM4P&-{-H=s!B_)FZ#_ z?Mcb^zK`@Eir$eL8uHBkyZTQHzWPq=daM^jDc(&&24WJ65kflNdMhT6*Am z`|u?Vrs?*tu4w~Dvf+XF4P6>cJa0`xP2FtNWBN5aO!-ou$B!ZAOo0P8KU$Uw4w;rW zNxz#G-U3Gk^-BX$f)n@ToxCBc4fn-f{jBY3vtD=D$p78Y60MlOG{kWscp)V}vA8hb zDQ862P^vm_zJANzWJkW51mSTA5g=Vz_JyXew@SGA+em*5WjOP9LCSWevh zn_SZNl=PX8Zbw!KRBI`CVHcN(QR~_pL@`%=#|B!TP zIWqmM*(sA-ZBP<6xz?|p#;_W_H|;%Q)x5zpNP?uP8`c58t}Zlw`Id z`|`qHCr1FsRaKv{B8HnDthz1rGDjc?QoAiRG!+n7vO}iO*wfUN8Ip8KFi78c^)#TO zNPW}pt_U&R#|R+rwur)TJS05vE-e!g!seMsEX^a1^CF8o92TX1k*DlWElBzNu7iVZ z^814np*^0{K4c&?y>9b_mItPZXatY(e zkRkNj(7pH21(m@;}cxR z4B3bRt-s&wz(XL+WF2A>h1!#71sMXlUkr}BPW8FuGHXO$H3xns+`pR4K$=*L_XFOB z&*XBr^+ni;)X*2xJytO_tE<+~yvlg1+Zx_TxjRFxIz}m|iX{$!@%y^qKJ4ByQyfWJ z2)9-A3+7a*Sc9MWc)VMf^W#a0Pt7{}GOzF>NKOkrBr{U5Zn7&~S&ftvFLqmmWw5Jd z>se%0sj`*BimF@)%hkyCk5;5kOWkN$M{U0DAM#KSkBEHB4R2)SU=#f_@)Mny&n`$jx_{Nj z6LD)r>|vY29wd6UJ>G?`X84H8>PysoeNu`~1&1I_D3Qw>=Z%Du%4ooZQ=R3m@96R*~Vtc+Mz3nbCgig0tqA&3MhO z&773TR>a2B7_5}iF&n|vIw|C#QZOh(*DNyoB%ia=+-lyVe9NP5sOn!BB+8N`~vM1YW*IE!(@_?VMVwRNu;i}Xb_4P)=*h+wN z#;TNnWe2*q^sIis~zG{lF-yMZP=!#IuMOa9wn z{Yg8{@3kU3YPZg3gt zd~L=R;L2ElZJxedDB;q82)wdR+6OB8d z@9@pF5Y3_ZMBUk4aBI43YI$k7@>>O}H72U-MCH#^VA2c6@7HE+N-_A{wrsBww0rqBvP~9ZrWZ|_R}nuanMeb zVTK6rEGrEQH^`XH#B`!zyuCj%cQd(8g{SZODNR{F%TU4EMCWi`*><`N@EUN5*`nye zyAayX1f-ot(s%O|LT@3iksGijmPmzkGmCx_;u~jiK_r|^MRFIitQZMm7@H+uI=z*e z(#B~gQ#3^va(ejC6J#R91)I>&XA4k3cU)YCfX^2iuL!qq(ict0JLRjoH;n!$(5`Fs zKxK_MI%)G~h)8><(m}6bz5?8yAGew6^TkM$f9UgCIp6uN*d|#Z9Uo>wx71O+Kl0qS z&;hosVI&#X&3j9B$E9&~ZA?rTWp@LZwTy1*YGI9R*WDwfd`{B6f~XK*^=ah^GxLVD zK|!Zb#P6cYX9ws1a0UqCh-&RnJ{E5Be(@koOBMc|TmRkz9VI2d0EVWMJfOTpPRqPI zM&iEU+UvvXEIU^1_}{0e;+ga0CVmvTT^lXphLhQOoi!kS(qR=}n^(#bTH5l;5;5)Z zQ7_}^U!EprAWU1hg=yNL^eT~+Hj_oFCR%qm z8c}^uri0brZ+4pc^8cVJt>Ng; zVc>y7)81f9?2fL8pqb^U_-x7p9>3Rgsn=MYb^@Eo=dUF)XT55H!`6E~CY@cJZF=fa z;}A4JdF-;*lIDRly@_D4$1frvrpC;c6f{x?0zjZG=m8HY2k-;c|4q>RY8Hvc63LuS zCzz*Xc-im0vY|8*nB|s6d5NAK1Hc+z5(F!WS9)@E$wPcaB@@-aa%PqE%3>pgO4?UN1*ucqo|z-Dx|fK=57NfLCeqrIalZS?!tjW z=d~=ayV4S9`r-yj{gRdVnRaKk`&mp&HeH3-mO9L~m+eSSGv_I~Syw>4j7z`73;6;e zXBn+%9b{{}agagYO*HSh65VreN$xdB%IV< zOcTlC6bdzs`8oOabqb|jE%d4I51l>z@=g(=)BSCHDkt8QUIeTAjXCo6u-kUuW9x84k)67VTCkp zOFrv{0I&{1p#B=`7oeQxzmi5sF|pLwnOxN3<25b#_att?1hG#ozby8N<1yB7^q~0I6_)_#xEc9{rrt#g&M5EXH0PkQ$ zSARc`D~}%V&y?HpKi4@=o4FY8)g)wTc<@>^GB-co#OM*?os&uj8zl^MCf`Cl^QKL` z>eT#ZvO|=SN4C!l6Jexn9PSd+Y%0i(5!MUO4-L%<{VoKfBNJW2+Uo6i2jAKn^atWv z=ktqK)B^Bjmd6AgM)pdtn!57SPeo3?MoJ#74O80F)6qrtx4&~pFhEJNV<1> zEfO%j0~5cs({lO&8g=buPVNA=WtX+=BINp7!=6UHNFG(l6x%QCndG1kfglPKNPUsRQPjmTWIQOe58$s zpC&)ew!o6YCi`Y z0(v}IOypN=!~H^6Q?vkTB4%i2eB7IUC_+R&{z*9tRa^R75tiGi6w0H$H0)T4IkSpt zJu0M`9v+dkq?4d$R4ENKo#>bF_Vh{xRY{U-=6U2ohU3P_-l1SM$H@TyQ_TBIkqlTFALdDM&#fKe97n z#NuFG3w=ao>Ny0Ff!aH{{E;{ieyLN$R5-HnxZ#=zfj?XkDjR)8w67~QEcC!HTSsb4 z&v^=o(iw0XKo387UB~*>s;VoDhpmDBuJ3Q>M#7d@r7@yQ`b-Rx>+|tgLch;H za*JC%Uth8V3A>%1;*O7{%6KX%GlaFojJPBGmz<>c>yOC5@ z3v1jEJ*(ek($mPdA0yh{Tb{*LW~jA$m-)VXv(XHz`H8z1;l z4#u8IW1Bk$EqF&Kq+rM|tzZZt))I`36BH=b@Rs*DyMgT@=7q2ayj4P=ro24i%3bH; z+_!knDjy?pQyiGe39IifJbfgwF+gDa#<96=yk1ImWs(PBAA$`ZzfjEOFY&)~?&Me- z7Ur^6b7&WQ10>|wpB^y(fU8^I??|Dz+}sbddY8NG74S3hzShM`)bR*CB&+KxW7aFP zUj^G5CqcX%4=Qu<7<8B)lF|XM+U#wDr+W5?L>f0^)SR1 z3~SrCstkT=-?vPBIHBG8LHUNKS~X#yiXl0YQFZl&$m$JX7#rpnDX^FNc46be>10#B zO+>`du?DVV9TL&ftG6YyKZs*y`n5tDn6F=q-1+ABA&|zCW%{BMuLl716|ZbdzB1)| zp5e4Q=1jdZW@7c+$NBZ}m#WV^8uMr0<1RVA#W9<0C?iE*uNm>(6JyJec9c2nr*;H9 z1Z$6`*Acfm%$CX5J$X^A+33r`mr`H(gydXhNF@T2&9g9)HgCoT;;qJ>9>eI4>K#78 zEr019nXg&zp`mg}Qr-iRWc)$lh}Mx=B_3Zopu0ugoBk7*P}F{C#-^c5DG#O1AHH#< zb4f`0(S8P<(0j^A)fuE5%LPsLUYj%C?!L7|p=$-^=X0{zIt5<84Iz@@$*JSuA zQVHu}QF^bF=;gAJ_r?giI)#;wywJ~!1f(HECNvZWVzn=kHp%zB`zJ&5Q{PN@a~sRIWIVtyOR*v=-%N5y~ zgEP1nZD7vc`ns-j@HDGrqOjNtgnP7$+I%zgd9AAjDbUpGTDbG#=nu{NcyHnUp#8@& zJ>-DycN_<%=Z=B7`fdaiXbXC^VMn@sLlFv0lKwrdBSY?>rdgRoVCC8Q_ zk%F3Jiw{?itflY>u_gliz^!Z?`t3&YMcryanGl~O*bzMyoXVr;c9l!aY-5tb*0tPi zG+$~tqyc|mT7kCSx%zyJF7p!LUN=sD(5&{E!dlDrlz907yNl^x3?+VVS(PNaj!rKn zciwe%LdK00hcuCs4#7gUs5I}Z=3($6 zVf^{~6y+a)jV|Ox&KVQT+74ncy1k*b20@6@q%rwPjRXI%1;uB8y4o@Cb8pU@d6gXB zXo5cEK>ZH&bK(SLG;bt-b-dmndRSvWJD{V)&XL6WDG-m3+=Hy=LUUmpt7X!d^J zNSxBBC_Qu8NzQ|Um@DR{MK?_>C~@mY6U-ap^2tj^`|j`a;O0dva9L(k;ZcRc3JpVI zw-2Gs*Yym)o}pO-ss6^Q!H~TlzxYv{)AkN-k`4SdQ|i^uM`m>_2KLoPPGn!4O(VSo z<2ccCJ{rd!tbeQ?o+IPSKteojd!wMv^>_xiZ1@F*mC`^GybJFy z-}fCHQZkNeZY_>lmlAT{oN-GDbv`Eg#&W5yrsiSQ&Klt^(_j`-{ zi<9QfgYG?~JL#$Dho5Xvm~1(c;|BeHsI2t}Uu<&cY2nbse7X2*0+0SaxfvvhMf2vS zT)0Lf;4^^YTrETH+*C!>+2A9fEv{s80)N`l67uG$8A*0Ob9zWsjx_M7utsa?s^5n; zPj4*6zXE4fkk1{^o4NP4EM6WZ!6R5(7oX{xwwiE@pA4_?Kx6Yz8P+jZTPGsT$Hp%X z6MuOVFnJ8JAT;KG^Dlo=zBFfTI_J#byd_NqekZG>Y;hlzEfFqs>U@l}qlJyhGp&bp ztJ1g!*66+3v(pZ6W^;NLYL}pD$T#0z#pm5jlQ(NR;KAk-Q78~L0r#r7TbHq26Oy>R6_RXueq!Cmv zNzTj$@06$7VBCgkHx8P0R1AuQhqhyA*8U?h-h&9IUSEM7P<>{22j4+4xbMec>g(}Z z%uL^C;IZ0P?tYYkVsCMe7zb_Kqv6Wgbv^fTR^C8|rr%FBq!scm@0x-ND```(Bu<|w z4tw9mzG_=?RC;fpPU%UOT+i0$HqrMZ(Z5AqR_UP13gxCoY$C>XA99g5QmBFMPbGvs<-{ccKozI+U15{Xo+%%SH=z)uQkv zM{}b5Tz$l;o4>&6yPJcZ()}tj+wl`siIPgo*fdM}QP zv~s%(e{~CgfZmcj>b0pb+EtZPs-8;SHBJ8)JVRlHJ>L6$KB{szGnH=%{|E^du?NB>SHesc+_}FzY0setI^3%kLc0q^z6&+dV(E=T9CeRzeSvE z{^qwzY3sNNT^}ik6#y7^R0uFVieKT6Vw(n_)vA9f+_r$9EGt`?OZ?AhJaK5ux`5iJ zvMd)8%VS}_@4U0vf&2nr-M-SSu4dgQrPb3ATa!yAS&ju3J&-l|5C#F-DHpv@{=(`9 zm1#-vc8D$b4s=xP4%f4HG7quRf3v^yKSZ6#Ma3f{lJjbi6*ls=%SKX5Mp0%4X+?`& zn>FvC3sJLZIn=r*&a~0V#IBd`sYP%Jw^-sX8MHQV&q)vrj+H*BM65xSd)%_x*;Q(jCHbmf>pm1cf5Bh4QI>r4^KCStB^`gbJ-vd@mn z&x%>$d0lvEx`ED01K2_3j;OT9jmf@Xq5P?3vNlNyPU;Q2XrD;0P7%|7EMpzB)b?HU zfhaH@&&n=t-JBAzt9%4q?i|aXUAYo{9mgjAZ0{I-xhG#sDI`fLdQMWRQbbH6%0)bJ zV945WtR$@~$dl=}hs6F=?m*iX)Pf?-s%*~Kt9)i1O(`RZW&DX_reDV0kXyzrTfV9D zY3G=PV?S@w5Ufvj5<--}2pmM9t-SBeErzyqp?a31E;Yip@Tz^DEHLHS2u7+WRmL2( zoJWT~XTQj02sZy@K;L0gdKSA>6#{v*?|-LmAkP%3%g3?(Op?TqT2W5lOH3sjH3`Dj^?CT1HKsacSIt+3~_ zbDA9X@68Iy=M2;sl}1)@T>{OdOS~TFht3me6<5v8cg@##|4prY#Z;b$cz}%Hw6gsN z9B$pqG{i#fZ)W9>rsFuHzq`a}#WMkzWulcsWhrk>-}531uc}Pc_g`E2cri6D*_u6# zeZ-k1RJDHj3+albF(u1V^w3EI<2N126jpN5f2kvx46irMv_+Cpd$Qdjfg>i>n6+On zcE)Qehr2FohhwSOT--XU)`uFb@nCcSHBdx^^5#7|&(w`A+#D;k05rRmU{y`&*d2~n zqp6SqxOO}l^ExqmIntFTilvDJrM}O5Y5ZS#;Z!ZeRDiHF|A-$vOisa>^s;cHP@Ylm z;$_zJ!KjaB4|%t(7SfQ$xvS(g6P=7!ia{Jg?bQ|XKFqbGP~W#C-k-yM99 zCDF>-4`Z7pV9l>xu}9Rv6R>as|EOxfZHrndwyzl%<@LcZx%O}ywkI6%-spWZ6?)rV zG=Z2xrPRx1N#kuaV&XYdloxz~vx!%Xece!yR0KJ&5NX=%sJWorkSMef8cplRm1PRm zb>-1jE`EralLsQk-HgmZ8cb9K+D9orU9g%NxzcL?zUpWM{c$t6&ulFyB+ZpdsWk&G zu5T{t5n{f+aL|6e$pEoixO}KAs3E80VMDR>b$BqFaO>l)k?;*US4y~bhMz(IdxqHH zq2r$X7V9L!fwdfLX}*nPEF{xK*ir+4yzWbPlsCJh@`F(0mNNFuFA3%?sQpWKSF4@O z_a_JSvq%q9y9~PV+I#Ey29Jj2zW315SN)7#PyC#4IzEz&>#s9aZWAj_-Q!=_`6>F~ zjwI}*x$#jGGbdeV@G`gNl2#t8gYn%SVvhKg=)v9q(ni_RO_+9eRu)c52Nb%!#ANa8#yb2mBt*I>Z6Y>kB}~iPfdLhc@}PnbIWLo zduj10VJhvllD8Y^j|w}wuN3$AGb{Wsx{`$=+)C~s<(9aKvR-DtXI#Q31y2zYK)!W= zUy0Ufh2)vZK;h>5-qoUB6woXtG)3hMpyahJb-|X*DPrbFCnLfZ)`G$u7rH8^z2LFr zv6ir^lTu?v6Q10)Cy7UCp43qI6;G8+S>C$$RR zZRR1Zj#O1Kt2}2slWwF4Bi(Yo3j?o{eL%s)iV~s*srhA1^finrzK0wyMwKu~;}_d6 zQ*p@j{D$LQft=#MLv<3TjN12R_Z*W8QkaCr5HxL?jT{k`x-4N#>11-Tc+-`u#%bxI zG`6#yz03)gwMpATcAFEDOtCcAuj_4f9z{3W1X&%gHFZpVhSm$iD=IA-|LQqsL}d-# zy&TVY-y2ozvD?A&|IRMO`LnbCtIB2a-NpZPye5oaVwK2rS0^Ss43S%Qph^|E!$At> z;ebpv`Nr5Dawae%aciMZH5>WB=f~n4zKSFbQV~gIWRoR^0UU4osT=EHi)}pjL#;^x zxl;&{V)AQw3hTP952K&f}$6OAo!u-~}n{iKcC5H@idT56EZ>_gLhy=a&QT-ocjUi=#-;R0uj z=)nI#_ABle>WnvQt0)I9;kr4*uL(;F3yT$NWp*-_^78Q;P!+{O-qkTrmnKZ}%hnKc z>MM9`p6ah8C1$_jAq7JQ_1c+{-}8R^QE9Uvi=JxiI2|rNX5@1>kx*~ltg<;|B!v$L zryrU(*XJ%eZM^ceJRtH@a$)+vGNlh84)mmkf>jviKSrVAHa$V&m?bG+V927?0V;CCnfmP zP4R|I-j6VjyXnH=qhL`lAOqXsH~(H}ALjXorQ2nPj5hEFqOrv&Inn62XEI4*mL-Es z?0kT!yM+4%d_trJ#?(N<<$a z%O0EBA~sL@F4rFhE32`DfxA^t8%tA+CR3OC($Kh2Z>mwnl(QXWFXOOt3=jWebM`F8 zFM}_Hh$nrYn&{n-)H&g%43WwIbsUz{Mz-osupVfLLFzY=wJnhLSx5a-dv zOrwa05TEksF~{-ruYA&Bib5Li#>dT{aJZ~yyjJ%AN<(uNN3GDOL&T%PW+LL zL-kd4czm|uC!8MA8htiR^pygH-EsDL5Hwk#sIf9{Ai1B)lUIUyZRT>rhZ};T_z?6X zWl$|u4b1utQyu4Z^;S(A@Wz`wr(rRUsyj2I0Q*{;-+tUR^E-L)3`_ z84R9HdLdX9Iaw}@D|=+hb1>bJ^9(Rd?{B-rlOCO>`wBgCe{RvU3j2`SY2`HSExm8S zKjOpuv3pD=>#7NDNhr|^1Q$6j)85gkjXc_y3*a>mhP1idEW6p#O!&Kre^oK_0V^@E z0w#wUv(2m(fwo@oFu~>Q*Eaw*P$~UCj~JM@LIH$gU6uyx#zPVj-+Pq6*Gqr3juPRD zXmRP8l?*}54+w;UAWQzf(aDj1Z-MBa2c9l13j^D-V7smo$f-&{L8sj+OzE^i?p#J{ zbNt$Jv3f=f6oM2YmMqnwXKyhzh8^*3keQUa`@8mX{UwnIs`(mF>dPaqeBy5m`Va*L zkV?iJfi*TOim-{C(9i3(3{hYSWz%2d!qy*H8N=;RUQ7|CAW&^t*-O@z1|Cr`;is$U z&-;=1^!}V3g|!h!-~@<(NvN$}KiX+S67`VN{!tPN_`8EZ23920F76FH$1VI0Cvl*X zEou2xOG(-lF_@HK4e|6FrcebhI4e>)4pb5IO~*^rTwawtck;~^dKT@}b)gvtQu%)} z%tn9L!|v-4*$07kEwS9&LbfLyFp35h!jqeufmQw>VGaT+BAXg4>;!bdtpE$Y{#~*C zpDVroUCO;NL2eTNWl1(_X|;YfdT{Db)XbOrbpsBc92~r_{sT?QMayrK-FtKOp6XOl zj_Hw|%6}w*c@uEMMHQ&_V8>RjC|P4{=`jNLnYGOhJpt;ja>91k8*(Nen!p?2y4`iP z&Xm<~(8#r7L0Kb4xoF8aCMY7Sk5<@zBJ(c)(t`z;(`RW}!gKOIGZ4kIixK11rt%Ah zr2ni)$-fS<&S3Yr_+2x-Lb=KZ%Th-N{@%?fFEmokUY=~6r4PLYayqdLL^|MY$)%2) z;W9*MRn6{zU%gf(tr{T{A3|1x5ObEG#$OkH8P%76s<(XEZko11ID=sZ@pH(9<)`L+ z11OmEu6+Ws5JOJOHMj(w(%7s914ke|xMSMDpg;oQizQi5c3uQWkr$o74rFW)p1qYONwvzO3KR6Ma`15l>m_FX^CZJF8ZBmoGDwxmM6AGe+W zZHC}lyjm@FBm!oGFytoG?$3zZn*WUt;+rvNAkBNFB(<|->0fFe(in;*15wG=1NZA5G5s&NnrpcBc^+s^eE8d#7 zXnLvtaeOxtVLAQYRLVb7Lt<<*XrT60y>8hea=hyyG<@VjgNFVc8CchhSCbl_9XZ3V zsCtFv_=>;Dh)Y*vk_}=Y3yI#c7}!=>e*e2+;w0I@VQtZZ;!ks5rkDf_6t26m4DY)C zu9m%$U)a>l`Bp`3J61&dR%5)+M`|-fejbq$!w0Wlw_f4fe}@aPIcRJiP_(t;?MTaG z1X2h{;`h2%yhYsnjAo94Zq-rzI#`W<;!M!Mn-py|4D-J6QSU5rFsi z4ky6jAu7;X_yS3P)!6>KM=Z^|5C42~6=DFdq8)DDbj_tYv-&m!_d4qw-*&3yh-TlHykB@PB|ti^=u`E-uDKLw4 z)a)TKO9UHYjbY mesh dimension=2 +- MED_POINT1 -> mesh dimension=0 +- MED_POLYHED -> mesh dimension=3 +- MED_TETRA4 -> mesh dimension=3 + +The mesh dimension of \a myMesh is equal to 3 ( \f max(2,0,3,3) ). The **relative mesh dimension** is equal to the difference between mesh dimension of geometic type and the mesh dimension +of the whole MED file dimension. It leads to the following **relative mesh dimension** : + +- MED_TRI3 -> **relative mesh dimension** = -1 +- MED_POINT1 -> **relative mesh dimension** = -3 +- MED_POLYHED -> **relative mesh dimension** = 0 +- MED_TETRA4 -> **relative mesh dimension** = 0 + +In \ref medloader **MEDLoader** all geometric information are then grouped relative dimension per relative dimension. It leads to the following geometric sorting of +MED file data structure of \a myMesh : + +- Level 0 + - MED_TETRA4 + - MED_POLYHED +- Level -1 + - MED_TRI3 +- Level -2 + - nothing -> level **not** available for \a myMesh +- Level -3 + - MED_POINT1 + +The mesh dimension of \a myMesh is 3. The relative mesh dimension available are [0,-1,-3]. */ /*! -\page MEDLoaderBasicAPI Basic MEDLoader API. +\page MEDLoaderBasicAPIPage Basic MEDLoader API. + +[TOC] The aim of this page is to present basic API of MEDLoader. The goal of this basic API is to perform a read or a write in one shot without any @@ -48,9 +171,10 @@ character in capital. You are intended to use these methods. The following chapters will try to describe in details some of important ones. The basic idea of MEDLoader is to exploite as much as possible MED -file capabilities to store MEDCoupling data file in a MED file and + file capabilities to store MEDCoupling data file in a MED file and reversely to load from a MED file into a MEDCoupling data structure. Basically, the info on components of ParaMEDMEM::DataArrayDouble + instances are stores into components and units into MED files. The name of meshes and fields are used by MEDLoader to use it as this into MED file. A field f with \ref ParaMEDMEM::MEDCouplingTimeDiscretization @@ -62,26 +186,9 @@ are limited. That's why the user should be aware of these constaints when trying to read/write a MED file using MEDLoader. MEDLoader tries to manage that by protecting the user by throwing exceptions when the rules are not followed. -\section MEDLoaderMainC Main concepts of MED files - -Here we will describes some of basic concepts of MED files in order to -use the best methods proposed by MEDLoader API. - -\subsection BasicMEDLoaderAPIGen Basics in MED files - -First of all MEDLoader \b will \b not read MED files whose version is -\b lower \b than \b 2.2. The MEDLoader::CheckFileForRead will perform -the check of that before any attempt of read. - - -For new comers in MED file world some of basics principles are -recalled here. Let's recall basic principles that explains some of the aspect of MEDLoade API. -\anchor MEDLoaderMeshNameConstraint MED file can contain several meshes. These meshes are -discriminated by their names (two meshes could not have the same -names). By the same way a MED file can contain several fields in MED. -So MEDLoader propose to you the MEDLoader::GetMeshNames method to -discover all the mesh names contained in your file. +\section BasicMEDLoaderBasicAPIGlobalInfo Retrieving tiny global information from MED files using basic API +The MEDLoader::CheckFileForRead method will perform the check of that before any attempt of read. A field is also discriminated by its name. The method MEDLoader::GetCellFieldNamesOnMesh and MEDLoader::GetNodeFieldNamesOnMesh are available to know all fields respectively on cells and on nodes lying on a specified mesh. @@ -96,11 +203,16 @@ each respectively iteration and order. A time step of a field lyies on one \b or \b more mesh(es) specified by its \b or \b their name. A time step of a field in MED file could be defined on point \b and on cell \b and, \b or on gauss points \b and, \b or on point per element. -This recalled specificities of MED file explains that it is necessary to specify -each time, at field-read time, the type of field, the iteration and order -number the mesh you are interested in. +This recalled specificities of MED file explains that it is necessary to specify each time, at field-read time, the type of field, the iteration and order number the mesh you are interested in. -\subsection BasicMEDLoaderAPIMesh Meshes in MED files +Let's recall basic principles that explains some of the aspect of MEDLoade API. +\anchor MEDLoaderMeshNameConstraint MED file can contain several meshes. These meshes are +discriminated by their names (two meshes could not have the same +names). By the same way a MED file can contain several fields in MED. +So MEDLoader propose to you the MEDLoader::GetMeshNames method to +discover all the mesh names contained in your file. + +\section BasicMEDLoaderBasicAPIMesh Reading and writing meshes in MED files using basic API In MED file meshes could combine in one unstructured mesh cells that have different dimension. For example it is possible to mix @@ -389,7 +501,9 @@ is not needed here. */ /*! -\page MEDLoaderAdvancedAPI Advanced %MEDLoader API. +\page MEDLoaderAdvancedAPIPage Advanced %MEDLoader API. + +[TOC] This method is much closer to MED file organization than \ref MEDLoaderBasicAPI "basic MEDLoader API". All MED file -- 2.39.2