Changes between Version 6 and Version 7 of List of examples

Show
Ignore:
Timestamp:
04/03/13 15:50:12 (12 years ago)
Author:
jorisborgdorff
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • List of examples

    v6 v7  
    88  The simple example model is specified in {{{src/cxa/SimpleExample.cxa.rb}}} and implemented in {{{src/java/examples/simplejava}}} contains a writer submodel instance {{{w}}} and the reader submodel instance {{{r}}}. Both submodels use the MUSCLE 2's free-form API. Instance {{{w}}} creates some data in the form of an array of doubles, and sends it to instance {{{r}}}, which reads the data and prints it out. The former has a conduit entrance called {{{data}}}, and the latter a conduit exit called {{{data}}}. In the CxA file, a multiplication filter is applied the conduit, with parameter 0.5, so all the data is multiplied by 0.5. 
    99 
    10 === Simple Submodel === 
     10 Simple Submodel:: 
     11  The scenario of Simple Submodel is the same as the Simple Example, but it uses the formal MUSCLE 2 Java API. 
    1112 
    12 The scenario of Simple Submodel is the same as the Simple Example, but it uses the formal MUSCLE 2 Java API. 
     13 Macro Micro:: 
     14  The Macro Micro model has two submodels with formal implementation, in a typical loop that Macro Micro models typically exhibit: in its loop, macro initializes the micro model, and the micro model sends its final observation back to the macro model. The macro model continues iterating for as long as there is simulation time. 
    1315 
    14 === Macro Micro === 
     16 Terminals: 
     17  In the Terminals model, a submodel instance {{{proc}}} processes data, by checking whether it is larger than a threshold. Incoming data is from a terminal {{{src}}}, which reads an array of doubles from a file. Outgoing data is an array of booleans for whether the values are larger than a threshold which is stored to file by the terminal {{{sink}}}. 
    1518 
    16 The Macro Micro model has two submodels with formal implementation, in a typical loop that Macro Micro models typically exhibit: in its loop, macro initializes the micro model, and the micro model sends its final observation back to the macro model. The macro model continues iterating for as long as there is simulation time. 
     19 Laplace Example:: 
     20  Runs a Laplace heat flow solver of two connected systems. At each iteration, the boundary condition of the systems is updated with the boundary data of the other. 
    1721 
    18 === Terminals === 
    19  
    20 In the Terminals model, a submodel instance {{{proc}}} processes data, by checking whether it is larger than a threshold. Incoming data is from a terminal {{{src}}}, which reads an array of doubles from a file. Outgoing data is an array of booleans for whether the values are larger than a threshold which is stored to file by the terminal {{{sink}}}. 
    21  
    22 === Laplace Example === 
    23  
    24 Runs a Laplace heat flow solver of two connected systems. At each iteration, the boundary condition of the systems is updated with the boundary data of the other. 
    25  
    26 === Ping Pong === 
    27  
    28 Does a benchmark, sending packages from the {{{Ping}}} submodel instance to the {{{Pong}}} submodel instance and back again, with different message sizes. Its parameters are set in {{{src/cxa/PingPong.cxa.rb}}}, and the code is in {{{src/java/examples/pingpong}}}. 
     22 Ping Pong:: 
     23  Does a benchmark, sending packages from the {{{Ping}}} submodel instance to the {{{Pong}}} submodel instance and back again, with different message sizes. Its parameters are set in {{{src/cxa/PingPong.cxa.rb}}}, and the code is in {{{src/java/examples/pingpong}}}. 
    2924 
    3025== C/C++ examples == 
     
    3227The MUSCLE C/C++ API is used in the {{{src/cpp/examples}}} directory. 
    3328 
    34 === SimpleCpp2 === 
     29 SimpleCpp2:: 
     30  The new MUSCLE 2 C++ API is used in SimpleCpp2, with CxA file {{{src/cxa/NativeExample2.cxa.rb}}}. It is the same scenario as the Simple Example for the MUSCLE 2 Java API, but the sender is now a C++ submodel. 
    3531 
    36 The new MUSCLE 2 C++ API is used in SimpleCpp2, with CxA file {{{src/cxa/NativeExample2.cxa.rb}}}. It is the same scenario as the Simple Example for the MUSCLE 2 Java API, but the sender is now a C++ submodel. 
     32 Data Integrity:: 
     33  To ensure the integrity of data sent over a range of connections, the Data Integrity model sends random data with different data types back and forth in different submodels. If you are worried that a non-standard protocol or network mechanism is used, this is the model with which you can be sure that MUSCLE leaves your data intact. 
    3734 
    38 === Data Integrity === 
    39  
    40 To ensure the integrity of data sent over a range of connections, the Data Integrity model sends random data with different data types back and forth in different submodels. If you are worried that a non-standard protocol or network mechanism is used, this is the model with which you can be sure that MUSCLE leaves your data intact. 
    41  
    42 === Simple MPI === 
    43  
    44 Similar to SimpleCpp2, SimpleMPI has a C implementation of the sender. This time, however, the sender consists of two MPI processes, that communicate their data with a standard MPI_Bcast. 
    45  
    46 === MPI Ring === 
     35 Simple MPI:: 
     36  Similar to SimpleCpp2, SimpleMPI has a C implementation of the sender. This time, however, the sender consists of two MPI processes, that communicate their data with a standard MPI_Bcast. 
    4737 
    4838== Fortran example == 
    4939 
     40 Simple Fortran:: 
     41  An example Fortran implementation of the writer submodel explained in the Simple Example for Java. The boilerplate code needed to communicate with the C library is included. 
    5042 
    5143== Scala example == 
    52  
     44 Simple Scala:: 
     45  An example Scala implementation of the writer submodel explained in the Simple Example for Java. Note that for it to work, you compile the code with the {{{scalac}}} compiler, and the Scala runtime library must be included in the Java classpath during runtime.