]> Creatis software - CreaPhase.git/blobdiff - octave_packages/secs2d-0.0.8/Utilities/Umsh2pdetool.m
Add a useful package (from Source forge) for octave
[CreaPhase.git] / octave_packages / secs2d-0.0.8 / Utilities / Umsh2pdetool.m
diff --git a/octave_packages/secs2d-0.0.8/Utilities/Umsh2pdetool.m b/octave_packages/secs2d-0.0.8/Utilities/Umsh2pdetool.m
new file mode 100644 (file)
index 0000000..63c2ba4
--- /dev/null
@@ -0,0 +1,61 @@
+function msh=Umsh2pdetool(filename);
+
+##
+##
+##  loadgmshmesh(filename);
+##
+##
+
+awk_command = "BEGIN {  filename = ARGV[1] ; gsub(/\\./,""_"",filename) }\n\
+\n\
+/\\$NOD/,/\\$ENDNOD/ { \n\
+    if ( FNR>2 ) \n\
+    {  \n\
+       if($0 ~ /^[^\\$]/  )  \n\
+       {\n\
+           print ""p ( "" $1 "" ,:) = ["" $2 "" ""  $3""];""  > filename ""_p.m"" \n\
+       }\n\
+    } \n\
+} \n\
+\n\
+/\\$ELM/,/\\$ENDNELM/ { \n\
+    if (  $1 ~ /\\$ELM/   )\n\
+    {\n\
+       gsub(/\\$ELM/,""t=["")\n\
+       print > filename ""_t.m""\n\
+       gsub(/t=\\[/,""e=["")\n\
+       print > filename ""_e.m""\n\
+\n\
+    } else if  ($1 ~ /\\$ENDELM/ ){\n\
+               gsub(/\\$ENDELM/,""];"")\n\
+               print > filename ""_t.m""\n\
+               print > filename ""_e.m""\n\
+    }\n\
+    else if ( $2 == ""2"" )\n\
+    {\n\
+       print ( $6 "" "" $7 "" "" $8 "" "" $4)  > filename ""_t.m"" \n\
+    }\n\
+    else if ( $2 == ""1"" )\n\
+    {\n\
+       print ( $6 "" "" $7 "" 0 0 "" $4 "" 0 0"")  > filename ""_e.m"" \n\
+    }\n\
+    else if ( $2 == ""9"" )\n\
+    {\n\
+     print ( $6 "" "" $7 "" "" $8 "" "" $9 "" "" $10 "" "" $11 "" "" \
+           $4)  > filename ""_t.m"" \n\
+    }\n\
+    else if ( $2 == ""8"" )\n\
+    {\n\
+     print ( $6 "" "" $7 "" "" $8 "" 0 "" $4)  > filename ""_e.m"" \n\
+    }\n\
+}\n\
+\n\
+{ }"
+
+system(["awk '" awk_command "' " filename ".msh"]);
+eval([ filename "_msh_p"]);
+eval([ filename "_msh_e"]);
+eval([ filename "_msh_t"]);
+
+
+msh=struct("p",p',"t",t',"e",e');
\ No newline at end of file