diff --git a/docs/YASK-tutorial.pdf b/docs/YASK-tutorial.pdf index 7190c529..9348f8cb 100644 Binary files a/docs/YASK-tutorial.pdf and b/docs/YASK-tutorial.pdf differ diff --git a/docs/api/html/classyask_1_1yc__index__node.html b/docs/api/html/classyask_1_1yc__index__node.html index 3eced6da..2a6a4833 100644 --- a/docs/api/html/classyask_1_1yc__index__node.html +++ b/docs/api/html/classyask_1_1yc__index__node.html @@ -118,7 +118,7 @@

Detailed Description

A dimension or an index in that dimension.

-

This is a leaf node in an AST. Created via yc_node_factory::new_step_index(), yc_node_factory::new_domain_index(), and yc_node_factory::new_misc_index().

+

This is a leaf node in an AST. Created via yc_node_factory::new_step_index(), yc_node_factory::new_domain_index(), yc_node_factory::new_misc_index(), yc_node_factory::new_first_domain_index(), or. yc_node_factory::new_last_domain_index().

Member Function Documentation

◆ get_name()

diff --git a/docs/api/html/classyask_1_1yc__node__factory-members.html b/docs/api/html/classyask_1_1yc__node__factory-members.html index 4476da42..b1487882 100644 --- a/docs/api/html/classyask_1_1yc__node__factory-members.html +++ b/docs/api/html/classyask_1_1yc__node__factory-members.html @@ -88,9 +88,9 @@ new_domain_index(const std::string &name) constyask::yc_node_factoryvirtual new_equals_node(yc_number_node_ptr lhs, yc_number_node_ptr rhs) constyask::yc_node_factoryvirtual new_equation_node(yc_var_point_node_ptr lhs, yc_number_node_ptr rhs, yc_bool_node_ptr sub_domain_cond=nullptr) constyask::yc_node_factoryvirtual - new_first_domain_index(yc_index_node_ptr idx) constyask::yc_node_factoryvirtual + new_first_domain_index(yc_index_node_ptr idx) constyask::yc_node_factoryvirtual new_greater_than_node(yc_number_node_ptr lhs, yc_number_node_ptr rhs) constyask::yc_node_factoryvirtual - new_last_domain_index(yc_index_node_ptr idx) constyask::yc_node_factoryvirtual + new_last_domain_index(yc_index_node_ptr idx) constyask::yc_node_factoryvirtual new_less_than_node(yc_number_node_ptr lhs, yc_number_node_ptr rhs) constyask::yc_node_factoryvirtual new_misc_index(const std::string &name) constyask::yc_node_factoryvirtual new_mod_node(yc_number_node_ptr lhs, yc_number_node_ptr rhs) constyask::yc_node_factoryvirtual diff --git a/docs/api/html/classyask_1_1yc__node__factory.html b/docs/api/html/classyask_1_1yc__node__factory.html index 62e590fe..2799401b 100644 --- a/docs/api/html/classyask_1_1yc__node__factory.html +++ b/docs/api/html/classyask_1_1yc__node__factory.html @@ -127,12 +127,12 @@ virtual yc_number_node_ptr new_mod_node (yc_number_node_ptr lhs, yc_number_node_ptr rhs) const  Create a modulo node.
  -virtual yc_number_node_ptr new_first_domain_index (yc_index_node_ptr idx) const - Create a symbol for the first index value in a given dimension.
-  -virtual yc_number_node_ptr new_last_domain_index (yc_index_node_ptr idx) const - Create a symbol for the last index value in a given dimension.
-  +virtual yc_index_node_ptr new_first_domain_index (yc_index_node_ptr idx) const + Create a symbol for the first index value in a given dimension.
+  +virtual yc_index_node_ptr new_last_domain_index (yc_index_node_ptr idx) const + Create a symbol for the last index value in a given dimension.
+  virtual yc_bool_node_ptr new_not_node (yc_bool_node_ptr rhs) const  Create a binary inverse operator node.
  @@ -699,8 +699,8 @@

-

◆ new_first_domain_index()

+ +

◆ new_first_domain_index()

@@ -709,7 +709,7 @@

- + @@ -736,8 +736,8 @@

-

◆ new_last_domain_index()

+ +

◆ new_last_domain_index()

@@ -746,7 +746,7 @@

virtual yc_number_node_ptr yask::yc_node_factory::new_first_domain_index virtual yc_index_node_ptr yask::yc_node_factory::new_first_domain_index ( yc_index_node_ptr  idx)
- + diff --git a/docs/api/html/classyask_1_1yc__solution.html b/docs/api/html/classyask_1_1yc__solution.html index 706dfd57..229f61ba 100644 --- a/docs/api/html/classyask_1_1yc__solution.html +++ b/docs/api/html/classyask_1_1yc__solution.html @@ -650,10 +650,10 @@

a->new_var_point({t, x, y+1})) * (1.0/3.0);
Bootstrap factory to create objects needed to define a stencil solution.
Definition: yask_compiler_api.hpp:96
virtual yc_solution_ptr new_solution(const std::string &name) const
Create a stencil solution.
-
Factory to create AST nodes.
Definition: yc_node_api.hpp:607
+
Factory to create AST nodes.
Definition: yc_node_api.hpp:609
virtual yc_index_node_ptr new_step_index(const std::string &name) const
Create a step-index node.
virtual yc_index_node_ptr new_domain_index(const std::string &name) const
Create a domain-index node.
-
#define EQUALS
Recommended macro to make the "equality" operator readable and self-explanatory.
Definition: yc_node_api.hpp:1084
+
#define EQUALS
Recommended macro to make the "equality" operator readable and self-explanatory.
Definition: yc_node_api.hpp:1086
Returns
Pointer to the new yc_var object.
Parameters

virtual yc_number_node_ptr yask::yc_node_factory::new_last_domain_index virtual yc_index_node_ptr yask::yc_node_factory::new_last_domain_index ( yc_index_node_ptr  idx)
diff --git a/docs/api/html/classyask_1_1yc__solution__base.html b/docs/api/html/classyask_1_1yc__solution__base.html index 2b3acac9..e203fc7a 100644 --- a/docs/api/html/classyask_1_1yc__solution__base.html +++ b/docs/api/html/classyask_1_1yc__solution__base.html @@ -142,11 +142,11 @@ - + - +
 
yc_number_node_ptr first_domain_index (yc_index_node_ptr dim)
 A simple wrapper for yc_node_factory::new_first_domain_index().
 A simple wrapper for yc_node_factory::new_first_domain_index().
 
yc_number_node_ptr last_domain_index (yc_index_node_ptr dim)
 A simple wrapper for yc_node_factory::new_last_domain_index().
 A simple wrapper for yc_node_factory::new_last_domain_index().
 
- + - +

diff --git a/docs/api/html/classyask_1_1yc__solution__with__radius__base.html b/docs/api/html/classyask_1_1yc__solution__with__radius__base.html index fb02bf5e..b7997b9f 100644 --- a/docs/api/html/classyask_1_1yc__solution__with__radius__base.html +++ b/docs/api/html/classyask_1_1yc__solution__with__radius__base.html @@ -148,11 +148,11 @@

 
yc_number_node_ptr first_domain_index (yc_index_node_ptr dim)
 A simple wrapper for yc_node_factory::new_first_domain_index().
 A simple wrapper for yc_node_factory::new_first_domain_index().
 
yc_number_node_ptr last_domain_index (yc_index_node_ptr dim)
 A simple wrapper for yc_node_factory::new_last_domain_index().
 A simple wrapper for yc_node_factory::new_last_domain_index().
 

diff --git a/docs/api/html/classyask_1_1yc__var__proxy.html b/docs/api/html/classyask_1_1yc__var__proxy.html index 8589584c..ea2d1ecf 100644 --- a/docs/api/html/classyask_1_1yc__var__proxy.html +++ b/docs/api/html/classyask_1_1yc__var__proxy.html @@ -147,11 +147,11 @@
a(t, x, y+1)) * (1.0/3.0);
Bootstrap factory to create objects needed to define a stencil solution.
Definition: yask_compiler_api.hpp:96
virtual yc_solution_ptr new_solution(const std::string &name) const
Create a stencil solution.
-
Factory to create AST nodes.
Definition: yc_node_api.hpp:607
+
Factory to create AST nodes.
Definition: yc_node_api.hpp:609
virtual yc_index_node_ptr new_step_index(const std::string &name) const
Create a step-index node.
virtual yc_index_node_ptr new_domain_index(const std::string &name) const
Create a domain-index node.
A wrapper or "proxy" class around a yc_var pointer.
Definition: yask_compiler_api.hpp:930
-
#define EQUALS
Recommended macro to make the "equality" operator readable and self-explanatory.
Definition: yc_node_api.hpp:1084
+
#define EQUALS
Recommended macro to make the "equality" operator readable and self-explanatory.
Definition: yc_node_api.hpp:1086

Compare to the example shown in yc_solution::new_var().

Scoping and lifetime: Since the yc_var pointer in a yc_var_proxy object is a shared pointer also owned by the yc_solution object used to construct the yc_var_proxy object, the underlying YASK var will not be destroyed until both the yc_var_proxy object and the yc_solution object are destroyed. A yc_var_proxy object created from an existing yc_var object will have the same properties.

Constructor & Destructor Documentation

diff --git a/docs/api/html/functions_func_n.html b/docs/api/html/functions_func_n.html index ac406d46..976c2246 100644 --- a/docs/api/html/functions_func_n.html +++ b/docs/api/html/functions_func_n.html @@ -82,13 +82,13 @@

- n -