lines 400-450 of file: example/multi_thread/multi_chkpoint_one.cpp

{xrst_begin multi_chkpoint_one_run app}

Run Multi-Threaded chkpoint_one Calculation
###########################################

Syntax
******
*ok* = ``multi_chkpoint_one_run`` ( *y_squared* , *square_root* )

Thread
******
It is assumed that this function is called by thread zero
and all the other threads are blocked (waiting).

y_squared
*********
This argument has prototype

   ``const vector<double>&`` *y_squared*

and its size is equal to the number of threads.
It is the values that we are computing the square root of.

square_root
***********
This argument has prototype

   ``vector<double>&`` *square_root*

The input value of *square_root* does not matter.
Upon return,
it has the same size and
is the element by element square root of *y_squared* .

ok
**
This return value has prototype

   ``bool`` *ok*

If it is false,
``multi_chkpoint_one_run`` detected an error.

Source
******
{xrst_literal
   // BEGIN RUN C++
   // END RUN C++
}

{xrst_end multi_chkpoint_one_run}
