File: cross_propagation_sic_right_expected.xsil

package info (click to toggle)
xmds2 3.1.0%2Bdfsg2-10
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 42,580 kB
  • sloc: python: 64,048; cpp: 4,868; ansic: 1,463; makefile: 144; sh: 54; javascript: 8
file content (132 lines) | stat: -rw-r--r-- 3,840 bytes parent folder | download | duplicates (7)
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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
<?xml version="1.0" encoding="UTF-8"?>
<simulation xmds-version="2">
  <testing>
    <xsil_file name="cross_propagation_sic_right.xsil" expected="cross_propagation_sic_right_expected.xsil" absolute_tolerance="1e-7" relative_tolerance="1e-5" />
  </testing>
  <name>cross_propagation_sic_right</name>
  <author>Graham Dennis</author>
  <description>
    Sine cross-propagation validity tests, using the SIC integrator.
    
    The 'u' variable checks for errors caused by poorly interpolating
    dependencies. The 'v' variable checks for errors just in the
    cross-propagation algorithm.
  </description>
  
  <features>
    <benchmark />
    <bing />
    <!-- That's right, this script breaks the shackles with FFTW! -->
  </features>
  
  <geometry>
    <propagation_dimension> z </propagation_dimension>
    <transverse_dimensions>
      <dimension name="t" lattice="128"  domain="(-10, 0)" transform="none" />
    </transverse_dimensions>
  </geometry>
  
  <vector name="main" type="complex">
    <components>
      foo
    </components>
    <initialisation>
      <![CDATA[
      foo = 0.0;
      ]]>
    </initialisation>
  </vector>
  
  <vector name="constants" type="real">
    <components>cosine</components>
    <initialisation>
      <![CDATA[
        cosine = cos(-t);
      ]]>
    </initialisation>
  </vector>
  
  <vector name="zerodConstants" type="real" dimensions="">
    <components>bar</components>
    <initialisation>
      <![CDATA[
        bar = M_PI;
      ]]>
    </initialisation>
  </vector>
  
  <vector name="cross" type="complex">
    <components>u v</components>
    <initialisation>
      <![CDATA[
        u = 0.0;
        v = 1.0;
      ]]>
    </initialisation>
  </vector>
  
  <sequence>
    <integrate algorithm="SIC" interval="1" steps="2">
      <samples>1</samples>
      <operators>
        <operator kind="cross_propagation" algorithm="SI" propagation_dimension="t">
          <integration_vectors>cross</integration_vectors>
          <dependencies>constants zerodConstants</dependencies>
          <boundary_condition kind="right">
            <![CDATA[
              // These are shifted back half a step because the interpretation
              // of the boundary conditions for SIC is slightly different for normal
              // cross-propagators. For normal cross-propagators, they start at the left edge
              // for SIC, they start half a step to the left (or right).
              u = sin(-t-0.5*_dt);
              v = polar(1.0, -t-0.5*_dt);
            ]]>
          </boundary_condition>
          
          <![CDATA[
            du_dt = -cosine;
            dv_dt = -i*v;
          ]]>
        </operator>
        <integration_vectors>main</integration_vectors>
        <![CDATA[
        dfoo_dz = 0.0;
        ]]>
      </operators>
    </integrate>
  </sequence>
  
  <output format="binary">
      <sampling_group initial_sample="no">
        <dimension name="t" />
        <moments>error_u error_v</moments>
        <dependencies>cross</dependencies>
        <![CDATA[
          error_u = abs(u - sin(-t));
          error_v = abs(v - polar(1.0, -t));
        ]]>
      </sampling_group>
  </output>

<info>
Script compiled with xpdeint version VERSION_PLACEHOLDER (SUBVERSION_REVISION_PLACEHOLDER)
See http://www.xmds.org for more information.
</info>

<XSIL Name="moment_group_1">
  <Param Name="n_independent">1</Param>
  <Array Name="variables" Type="Text">
    <Dim>3</Dim>
    <Stream><Metalink Format="Text" Delimiter=" \n"/>
t error_u error_v 
    </Stream>
  </Array>
  <Array Name="data" Type="double">
    <Dim>128</Dim>
    <Dim>3</Dim>
    <Stream><Metalink Format="Binary" UnsignedLong="uint32" precision="double" Type="Remote" Encoding="LittleEndian"/>
cross_propagation_sic_right_expected_mg0.dat
    </Stream>
  </Array>
</XSIL>
</simulation>