/usr/share/doc/xmds/examples/soliton.xmds is in xmds 1.6.6-7.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | <?xml version="1.0"?>
<!--Example Exactly Solvable Coupled NLSE-->
<!-- $Id: soliton.xmds 1526 2007-08-21 17:30:14Z paultcochrane $ -->
<!-- Copyright (C) 2000-2007 -->
<!-- -->
<!-- Code contributed by Greg Collecutt, Joseph Hope and Paul Cochrane -->
<!-- -->
<!-- This file is part of xmds. -->
<!-- -->
<!-- This program is free software; you can redistribute it and/or -->
<!-- modify it under the terms of the GNU General Public License -->
<!-- as published by the Free Software Foundation; either version 2 -->
<!-- of the License, or (at your option) any later version. -->
<!-- -->
<!-- This program is distributed in the hope that it will be useful, -->
<!-- but WITHOUT ANY WARRANTY; without even the implied warranty of -->
<!-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -->
<!-- GNU General Public License for more details. -->
<!-- -->
<!-- You should have received a copy of the GNU General Public License -->
<!-- along with this program; if not, write to the Free Software -->
<!-- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, -->
<!-- MA 02110-1301, USA. -->
<simulation>
<!-- Global system parameters and functionality -->
<name>soliton</name>
<author>Unknown Author</author>
<description>
Example of an exactly solvable coupled nonlinear Schroedinger
equation. Describes solition formation.
</description>
<prop_dim>z</prop_dim>
<error_check>yes</error_check>
<stochastic>no</stochastic>
<!-- Global variables for the simulation -->
<globals>
<![CDATA[
const double alpha = 1;
const double beta = 1;
]]>
</globals>
<!-- Field to be integrated over -->
<field>
<name> main </name>
<dimensions> t </dimensions>
<lattice> 50 </lattice>
<domains> (-5,5) </domains>
<samples> 1 </samples>
<vector>
<name> main </name>
<type> complex </type>
<components>u v</components>
<fourier_space>no</fourier_space>
<![CDATA[
u = complex(exp(-t*t/alpha/alpha/4),0);
v = complex(exp(-t*t/beta/beta/4),0);
]]>
</vector>
</field>
<!-- The sequence of integrations to perform -->
<sequence>
<integrate>
<algorithm>RK4IP</algorithm>
<interval>10</interval>
<lattice>2400</lattice>
<samples>30</samples>
<k_operators>
<constant>yes</constant>
<operator_names>L</operator_names>
<![CDATA[
L = i*(-kt*kt/2);
]]>
</k_operators>
<vectors>main</vectors>
<iterations>3</iterations>
<![CDATA[
const double density = u.re*u.re+u.im*u.im+v.re*v.re+v.im*v.im;
du_dz = L[u] + i*u*density;
dv_dz = L[v] + i*v*density;
]]>
</integrate>
</sequence>
<!-- The output to generate -->
<output format="ascii" precision="double">
<group>
<sampling>
<fourier_space> no </fourier_space>
<lattice> 25 </lattice>
<moments>ure uim vre vim</moments>
<![CDATA[
ure = u;
uim = -i*u;
vre = v;
vim = -i*v;
]]>
</sampling>
</group>
</output>
</simulation>
|