MathGroup Archive 2013

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Splice fails (Mathematica 9; Windows)

  • To: mathgroup at smc.vnet.net
  • Subject: [mg130327] Re: Splice fails (Mathematica 9; Windows)
  • From: a.a.almasy at gmail.com
  • Date: Wed, 3 Apr 2013 04:09:02 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-newout@smc.vnet.net
  • Delivered-to: mathgroup-newsend@smc.vnet.net
  • References: <kgutm5$nsl$1@smc.vnet.net>

I have a similar problem. I am trying to Splice a file but all Mathematica would do is delete the two delimiters <* and *>. The code is:

MyFortranForm[exp_, name_] := Module[{rules, file, out, frm, form},
   rules = {};
   file = name <> ".mf";
   out = OpenWrite[file];
   WriteString[out, name <> " = <* form *> "];
   Close[out];
   form = 
    StringJoin @@ 
     Riffle[With[{splits = 
         StringSplit[ToString@FortranForm[exp //. rules], " "]}, 
       Fold[If[StringLength[Last@#1] + StringLength[#2] > 60, 
          Join[#1, {#2}], 
          Join[Most[#1], {StringJoin[Last[#1], #2]}]] &, {First@
          splits}, Rest[splits]]], "  &\n"] ;
   On[frm];
   Splice[name <> ".mf", PageWidth -> 120];
   FilePrint[name <> ".f"];
   Return[]
   ];

Now when I am using this on an expression:

MyFortranForm[A+B+C, "test"]

it returns:

test = form 

Does anyone has any ideas? I cannot find the problem. Internally form has the right form but it won't get sliced into the file.

Thanks,
Andrea



  • Prev by Date: Re: what is wrong with this code?
  • Next by Date: Re: A question about numerically solving differential equations
  • Previous by thread: Re: Issues with Rendering of Graphics[]
  • Next by thread: Re: Splice fails (Mathematica 9; Windows)