Hi all,(adsbygoogle = window.adsbygoogle || []).push({});

I'm currently trying to implement some code to compute the Frechet derivative of a system of PDEs, and the associated formal adjoint. The code I'm using to compute derivative is:

This works an absolute charm. Then to compute the associated adjoint, I use:Code (Text):FrechetD[support_List, dependVar_List,

independVar_List, testfunction_List] :=

Block[{indep, frechet, deriv, \[Epsilon], r0, x1, x2},

r0 = Function[indep, x1 + \[Epsilon] x2];

frechet = {}; Do[deriv = {};

Do[AppendTo[deriv, \!\(

\*SubscriptBox[\(\[PartialD]\), \(\[Epsilon]\)]\ \((support[[

j]] /. \[IndentingNewLine]dependVar[[

i]] -> \((r0 /. \[IndentingNewLine]{indep ->

independVar, \[IndentingNewLine]x1 ->

dependVar[[i]] @@ independVar, \[IndentingNewLine]x2 ->

testfunction[[i]] @@

independVar})\))\)\) /. \[Epsilon] -> 0],

{i, 1, Length[support]}];

AppendTo[frechet, deriv],

{j, 1, Length[support]}];

frechet]

This doesn't work, sadly. All it seems to do is give me the transpose of the original Frechet derivative matrix. The code originally came from a book I've looked at, so it can't be too far wrong. Sadly, my mathematica skills are pretty much non-existent, so I haven't a clue what the problem is! If anyone could give me some pointers it would be much appreciated!Code (Text):AdjointFrechetD[support_List, dependVar_List,

independVar_List, testfunction_List] :=

Block[{subrule, $testf, frechet, n, b},

subrule = b_. ($testf^(n__)) @@ independVar :>

(-1)^Plus @@ {n} \!\(

\*SubscriptBox[\(\[PartialD]\), \(Delete[Thread[{independVar, {n}}],

0]\)]\((b\ $testf @@ independVar)\)\);

frechet = FrechetD[support, dependVar,

independVar , testfunction];

Do[frechet =

frechet /.

(subrule /. $testf -> testfunction[[i]]),

{i, 1, Length[testfunction]}];

frechet = Transpose[frechet]]

Many thanks,

Ant

**Physics Forums | Science Articles, Homework Help, Discussion**

Dismiss Notice

Join Physics Forums Today!

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

# Any Mathematica whizzes?

**Physics Forums | Science Articles, Homework Help, Discussion**