Difference between pages "Prefix sums" and "Asin"

From Mesham
(Difference between pages)
Jump to navigationJump to search
(Download)
 
 
Line 1: Line 1:
 
== Overview ==
 
== Overview ==
  
Prefix sums is a very simple, basic parallel algorithm commonly used as the building block of many applications. Also known as a scan, each process will sumate their value with every preceding processes' value. For instance, p=0 returns its value, p=1 returns p=1 + p=0 values, p=2 returns p=2 + p=1 + p=0 values. The MPI reduce command often implements the communication via the logarithmic structure shown below.  
+
The asin(d) function will find the inverse sine of the value or variable ''d'' passed to it.
  
== Source Code ==
+
* '''Pass:''' A [[Double]] to find the inverse sine of
  
function void main[var arga,var argb]
+
* '''Returns:''' A [[Double]] representing the inverse sine
{
 
  var m:=10;
 
  var a:Int :: allocated[multiple[]];
 
  var p;
 
  par p from 0 to m - 1
 
  {
 
    var mine:Int;
 
    mine:= randomnumber[0,toInt[argb#1]];
 
    var i;
 
    for i from 0 to m - 1
 
    {
 
      var myvalue:=mine;
 
      if (i < p) myvalue:=0;
 
      (a :: reduce[i, "sum"]):=myvalue;
 
    };
 
    print[p," = ",a,"\n"];
 
  };
 
};
 
  
== Notes ==
+
== Example ==
  
The function main has been included here so that the user can provide, via command line options, the range of the random number to find. The complexity of the prefix sums is taken away by using the reduce primitive communication type.
+
#include <maths>
 +
 +
function void main() {
 +
    var d:=asin(23);
 +
    var y:=asin(d);
 +
};
  
== Download ==
+
''Since: Version 1.0''
  
Download the entire prefix sums source code [http://www.mesham.com/downloads/prefix.mesh here]
+
[[Category:Function Library]]
 +
[[Category:Maths Functions]]

Revision as of 14:32, 15 April 2013

Overview

The asin(d) function will find the inverse sine of the value or variable d passed to it.

  • Pass: A Double to find the inverse sine of
  • Returns: A Double representing the inverse sine

Example

#include <maths>

function void main() {
   var d:=asin(23);
   var y:=asin(d);
};

Since: Version 1.0