⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vibstring.xmds

📁 XMDS is a code generator that integrates equations. You write them down in human readable form in a
💻 XMDS
字号:
<?xml version="1.0"?><!-- Example simulation: Waves on a vibrating string --><!-- $Id: vibstring.xmds,v 1.8 2004/07/14 06:37:05 joehope Exp $ --><!--  Copyright (C) 2000-2004                                           --><!--                                                                    --><!--  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., 59 Temple Place - Suite 330, Boston,            --><!--  MA  02111-1307, USA.                                              --><!-- Adapted from the example in --><!-- "A first course in computational physics" --><!-- Paul L. DeVries, pg 348 --><simulation>  <name>vibstring</name>  <author>Paul Cochrane</author>  <description>    Example simulation of waves on a vibrating string.  Adapted from    the example in "A first course in computational physics" by Paul    L. Devries, page 348.  </description>  <!-- Global system parameters and functionality -->  <prop_dim>t</prop_dim>  <error_check>yes</error_check>  <stochastic>no</stochastic>  <!-- Global variables for the simulation -->  <globals>  <![CDATA[    const double length = 1.0;      // 1 metre    const double mass = 1e-3;       // 1 gram    const double T = 10.0;          // (Tension) 10 Newtons    const double mu = mass/length;  // mass density    const double c = sqrt(T/mu);    // speed of wave propagation  ]]>  </globals>  <!-- Field to be integrated over -->  <field>    <name>main</name>    <dimensions>  x   </dimensions>    <lattice>    100  </lattice>    <domains>  (0,1) </domains>    <samples>1</samples>    <vector>      <name>main</name>      <type>complex</type>      <components>u uDot</components>      <fourier_space>no</fourier_space>      <![CDATA[        /* supposed to be 0 at the boundaries x=0 and x=1, but can't do this in xmds-1.2 */	u = rcomplex(exp(-100.0*(x-0.5)*(x-0.5)),0.0);	uDot = 0.0;      ]]>    </vector>  </field>  <!-- The sequence of integrations to perform -->  <sequence>    <integrate>      <algorithm>RK4EX</algorithm>      <interval>0.002</interval>      <lattice>1000</lattice>      <samples>20</samples>      <k_operators>        <constant>yes</constant>        <operator_names>L</operator_names>        <![CDATA[          L = -T*kx*kx/mu;        ]]>      </k_operators>      <vectors>main</vectors>        <![CDATA[          du_dt = uDot;	  duDot_dt = L[u];        ]]>    </integrate>  </sequence>  <!-- The output to generate -->  <output format="ascii" precision="double">    <filename>vibstring.xsil</filename>    <group>      <sampling>        <fourier_space> no </fourier_space>        <lattice>       50 </lattice>        <moments>amp</moments>	<![CDATA[	  amp=u;	]]>      </sampling>    </group>  </output></simulation>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -