| Procedure | Location | Procedure Type | Description |
|---|---|---|---|
| acheck | lsqr_module | Subroutine | Checks the two modes of aprod for LSQR. |
| add_edge | dag_module | Subroutine | add an edge index for this vertex |
| add_edge | problem_23 | Subroutine | add an edge to this node (path to another node with the specified distance) |
| add_lens | problem_15_module | Subroutine | |
| add_to_queue | problem_17 | Subroutine | |
| add_to_queue | problem_17 | Subroutine | |
| all_in_set | problem_8 | Function | returns true if all the elements of ivals are in the set iset |
| aprod1 | lsqrtest_module | Subroutine | aprod1 computes y = y + Ax for subroutine aprod, where A is a test matrix of the form A = HYD*HZ, and the latter matrices HY, D, HZ are represented by input vectors with the same name. |
| aprod2 | lsqrtest_module | Subroutine | aprod2 computes x = x + A(t)y for subroutine aprod, where A is a test matrix of the form A = HYD*HZ, and the latter matrices HY, D, HZ are represented by input vectors with the same name. |
| aprod_ez | lsqr_module | Subroutine | The internal |
| aprod_test_solver | lsqrtest_module | Subroutine | This is the matrix-vector product routine required by subroutines LSQR and CRAIG for a test matrix of the form A = HYDHZ. The quantities defining D, HY, HZ are in the work array rw, followed by a work array w. These are passed to aprod1 and aprod2 in order to make the code readable. |
| backtracking_linesearch | nlesolver_module | Subroutine | Backtracking line search. |
| beats | problem_7 | Function | return true if hand1 beats hand2 (has a higher score) |
| build_graph | problem_23 | Subroutine | |
| char_array_to_int | aoc_utilities | Function | Character array to integer routine |
| char_to_int | aoc_utilities | Function | Basic string to integer routine |
| char_to_int64 | aoc_utilities | Function | Basic string to integer(ip) routine. Hacky hack just so we can overload as int() |
| check | problem_17 | Subroutine | |
| check | problem_17 | Subroutine | |
| check | problem_3 | Function | if the char is part of a number, then get it and append to ivals |
| clear_exceptions | numerical_differentiation_module | Subroutine | Clear all exceptions. |
| clock_end | aoc_utilities | Subroutine | Print runtime in milliseconds form the start of the clock. |
| clock_start | aoc_utilities | Subroutine | Start the clock |
| columns_in_partition_group | numerical_differentiation_module | Subroutine | Returns the columns in a sparsity partition group. |
| compute_function_with_cache | numerical_differentiation_module | Subroutine | Wrapper for computing the function, using the cache. |
| compute_indices | numerical_differentiation_module | Subroutine | Computes the |
| compute_jacobian | numerical_differentiation_module | Subroutine | Compute the Jacobian. |
| compute_jacobian_dense | numerical_differentiation_module | Subroutine | just a wrapper for compute_jacobian, that returns a dense ( |
| compute_jacobian_for_sparsity | numerical_differentiation_module | Subroutine | A separate version of compute_jacobian to be used only when
computing the sparsity pattern in compute_sparsity_random_2.
It uses |
| compute_jacobian_partitioned | numerical_differentiation_module | Subroutine | Compute the Jacobian using finite differences, (using the partitioned sparsity pattern to compute multiple columns at a time). |
| compute_jacobian_standard | numerical_differentiation_module | Subroutine | Compute the Jacobian using finite differences. (one column at a time) |
| compute_jacobian_times_vector | numerical_differentiation_module | Subroutine | Returns the product |
| compute_jacobian_with_diff | numerical_differentiation_module | Subroutine | Compute the Jacobian one element at a time using the Neville's process algorithm diff. This takes a very large number of function evaluations, but should give a very accurate answer. |
| compute_perturb_vector | numerical_differentiation_module | Subroutine | Compute |
| compute_perturbation_vector | numerical_differentiation_module | Subroutine | Compute |
| compute_sparsity_dense | numerical_differentiation_module | Subroutine | assume all elements of Jacobian are non-zero. |
| compute_sparsity_pattern | numerical_differentiation_module | Subroutine | Computes the sparsity pattern and return it. Uses the settings currently in the class. |
| compute_sparsity_perturbation_vector | numerical_differentiation_module | Subroutine | Compute |
| compute_sparsity_random | numerical_differentiation_module | Subroutine | Compute the sparsity pattern by computing the function at three
"random" points in the [ |
| compute_sparsity_random_2 | numerical_differentiation_module | Subroutine | Compute the sparsity pattern by computing a 2-point jacobian at a specified
number of "random" points ( |
| count_adjacent | problem_23 | Function | count the number of adjacent cells not a tree |
| cross | aoc_utilities | Function | Cross product of two real 3x1 vectors |
| d2norm | lsqr_module | Function | Returns with precautions to avoid overflow. |
| dag_destroy | dag_module | Subroutine | Destroy the |
| dag_generate_dependency_matrix | dag_module | Subroutine | Generate the dependency matrix for the DAG. |
| dag_generate_digraph | dag_module | Function | Generate a Graphviz digraph structure for the DAG. |
| dag_get_dependencies | dag_module | Function | get all the vertices that depend on this vertex. |
| dag_get_edges | dag_module | Function | get the edges for the vertex (all the the vertices that this vertex depends on). |
| dag_save_digraph | dag_module | Subroutine | Generate a Graphviz digraph structure for the DAG and write it to a file. |
| dag_set_edges | dag_module | Subroutine | set the edges for a vertex in a dag |
| dag_set_vertex_info | dag_module | Subroutine | set info about a vertex in a dag. |
| dag_set_vertices | dag_module | Subroutine | set the number of vertices in the dag |
| dag_toposort | dag_module | Subroutine | Main toposort routine |
| dcopy | lsqpblas_module | Subroutine | copies a vector, |
| ddot | lsqpblas_module | Function | dot product of two vectors |
| degr | dsm_module | Subroutine | Given the sparsity pattern of an |
| deriv | test2 | Function | Problem function true derivative |
| destination | problem_18 | Function | get destination point |
| destroy_cache | numdiff_cache_module | Subroutine | Destroy a cache. |
| destroy_cache | aoc_cache_module | Subroutine | Destroy a cache. |
| destroy_nlesolver_variables | nlesolver_module | Subroutine | Destructor |
| destroy_numdiff_type | numerical_differentiation_module | Subroutine | destroy the numdiff_type class. |
| destroy_sparsity | numerical_differentiation_module | Subroutine | destroy a sparsity_pattern type. |
| destroy_sparsity_pattern | numerical_differentiation_module | Subroutine | Destroy the sparsity pattern in the class. |
| diff | diff_module | Subroutine | the procedure |
| diff | aoc_utilities | Function | Difference ip vector |
| dijkstra | problem_23 | Subroutine | |
| divide_interval | numdiff_utilities_module | Function | Returns a set of slightly randomized equally-spaced points that divide an interval. |
| dnrm2 | lsqpblas_module | Function | euclidean norm of a vector. |
| drop | problem_22 | Subroutine | continue forward in time until all the bricks settle. |
| dscal | lsqpblas_module | Subroutine | scales a vector by a constant. |
| dsm | dsm_module | Subroutine | The purpose of |
| dsm_wrapper | numerical_differentiation_module | Subroutine | Wrapper for dsm to compute the sparsity pattern partition. |
| equal_within_tol | numdiff_utilities_module | Function | Returns true if the values in the array are the same (to within the specified absolute tolerance). |
| exact_linesearch | nlesolver_module | Subroutine | An exact linesearch that uses a derivative-free minimizer to
find the minimum value of |
| expand_queue | problem_17 | Subroutine | Add elements to the integer vector in chunks. |
| expand_vector | numdiff_utilities_module | Interface | |
| expand_vector | aoc_utilities | Subroutine | Add elements to the integer vector in chunks. |
| expand_vector_int | numdiff_utilities_module | Subroutine | Add elements to the integer vector in chunks. |
| expand_vector_real | numdiff_utilities_module | Subroutine | Add elements to the real vector in chunks. |
| export | sparse_test | Subroutine | export an iteration: |
| export | nlesolver_test_1 | Subroutine | export an iteration: |
| extrapolate | problem_9 | Function | extrapolate the next value in the sequence using a difference table. Straightfoward implemention: create the full table, and then evaluate it. |
| faccur | diff_module | Subroutine | This procedure attempts to estimate the level of rounding errors in
the calculated function values near the point |
| failed | numerical_differentiation_module | Function | Returns True if an exception has been raised. |
| fcn | dsm_test | Subroutine | Function subroutine for testing fdjs. |
| fdjs | dsm_module | Subroutine | Given a consistent partition of the columns of an |
| find_node | problem_8 | Function | |
| finite_diff_method | numerical_differentiation_module | Interface | constructor |
| fixed_point_linesearch | nlesolver_module | Subroutine | A simple search that just evaluates the function at a specified number of points and picks the one with the minimum function value. |
| fmin | fmin_module | Function | An approximation x to the point where |
| func | test2 | Function | Problem function |
| func | test | Function | Test function to minimize. |
| func | sparse_test | Subroutine | compute the function |
| func | nlesolver_test_1 | Subroutine | compute the function |
| generate_dense_sparsity_partition | numerical_differentiation_module | Subroutine | Generate a "dense" sparsity partition. |
| get_accepted | problem_19b | Function | count of all the parts in the set |
| get_all_methods_in_class | numerical_differentiation_module | Function | Returns all the methods with the given |
| get_all_pieces_above | problem_22 | Function | reursively get a list of all pieces above piece i |
| get_all_pieces_below | problem_22 | Function | reursively get a list of all pieces below piece i |
| get_cell | problem_23 | Function | |
| get_error_status | numerical_differentiation_module | Subroutine | Returns the current error code and message. |
| get_finite_diff_formula | numerical_differentiation_module | Subroutine | Return a string with the finite difference formula.
Input is the method |
| get_finite_difference_method | numerical_differentiation_module | Subroutine | Return a finite_diff_method given the |
| get_formula | numerical_differentiation_module | Subroutine | Return a string with the finite difference formula. |
| get_from_cache | numdiff_cache_module | Subroutine | Check if the |
| get_from_cache | aoc_cache_module | Subroutine | Check if the |
| get_number | problem_3 | Function | get the full number contining the character at i,j |
| get_pieces_above | problem_22 | Function | get set of pieces directly above piece i |
| get_pieces_below | problem_22 | Function | get set of pieces directly below piece i |
| get_sparsity_pattern | numerical_differentiation_module | Subroutine | Returns the sparsity pattern from the class. If it hasn't been computed, the output arrays will not be allocated. |
| get_status | nlesolver_module | Subroutine | Return the status code and message from the nlesolver_type class. |
| go | problem_16 | Subroutine | |
| go | problem_18 | Subroutine | |
| go | problem_11 | Function | |
| go | problem_6 | Function | |
| go | problem_13 | Subroutine | compute the number of cols to left of mirror (0 if none) call with transpose(puzzle) to get number of rows above. |
| go | problem_12 | Subroutine | |
| go | problem_12b | Function | |
| go | problem_23 | Subroutine | solve the case |
| grad | sparse_test | Subroutine | compute the gradient of the function (Jacobian): |
| grad | nlesolver_test_1 | Subroutine | compute the gradient of the function (Jacobian): |
| grad_sparse | sparse_test | Subroutine | compute the gradient of the function (Jacobian): |
| hand_type | problem_7 | Function | returns the type of hand |
| hash | problem_15 | Function | Determine the ASCII code for the current character of the string. |
| Hbuild | lusol | Subroutine | |
| Hchange | lusol | Subroutine | |
| Hdelete | lusol | Subroutine | |
| Hdown | lusol | Subroutine | |
| hex2int | aoc_utilities | Function | |
| Hinsert | lusol | Subroutine | |
| hprod | lsqrtest_module | Subroutine | hprod applies a Householder transformation stored in hz to get y = ( I - 2hzhz(transpose) ) * x. |
| Hup | lusol | Subroutine | |
| ido | dsm_module | Subroutine | given the sparsity pattern of an |
| in_seed_list | problem_5 | Function | |
| index_in_cards | problem_7 | Function | |
| index_in_queue | problem_17 | Function | |
| index_in_queue | problem_17 | Function | |
| initialize | problem_22 | Subroutine | read the data |
| initialize_cache | numdiff_cache_module | Subroutine | Initialize the cache. Must be called first before use. |
| initialize_cache | aoc_cache_module | Subroutine | Initialize the cache. Must be called first before use. |
| initialize_ez | lsqr_module | Subroutine | Constructor for lsqr_solver_ez. |
| initialize_finite_difference_method | numerical_differentiation_module | Function | Constructor for a finite_diff_method. |
| initialize_nlesolver_variables | nlesolver_module | Subroutine | Constructor for the class. |
| initialize_numdiff | numerical_differentiation_module | Subroutine | Initialize a numdiff_type class. This must be called first. |
| initialize_numdiff_for_diff | numerical_differentiation_module | Subroutine | Alternate version of initialize_numdiff routine when using diff to compute the Jacobian. |
| int | aoc_utilities | Interface | |
| int_array_to_char_array | aoc_utilities | Function | integer array to Character array |
| integer_to_string | numerical_differentiation_module | Function | Convert an integer to a string. |
| integer_to_string | dag_module | Function | Integer to allocatable string. |
| inverse | aoc_utilities | Subroutine | inverse of a 2x2 matrix. |
| ipoint | problem_12b | Function | |
| ipound | problem_12b | Function | |
| is_node | problem_23 | Function | returns true if a node is at these coordinates |
| is_not_number | aoc_utilities | Function | returns true if the character is not a number. |
| is_number | aoc_utilities | Function | returns true if the character is a number from 0 to 9. |
| is_symbol | problem_3 | Function | |
| jdamax | lusol | Function | |
| lcm | aoc_utilities | Function | LCM. based on code from NCAR Command Language |
| linear_solver | nlesolver_module | Subroutine | Solve the linear system: , using a dense, direct method. |
| locpt | aoc_utilities | Subroutine | given a polygonal line connecting the vertices (x(i),y(i)) (i = 1,...,n) taken in this order. it is assumed that the polygonal path is a loop, where (x(n),y(n)) = (x(1),y(1)) or there is an arc from (x(n),y(n)) to (x(1),y(1)). |
| LSQR | lsqr_module | Subroutine | LSQR finds a solution to the following problems: |
| lsqr_test | lsqrtest_module | Subroutine | Unit test. |
| lstp | lsqrtest_module | Subroutine | lstp generate a sparse least-squares test problem of the form ( A )x = ( b ) ( dampI ) ( 0 ) for solution by LSQR, or a sparse underdetermined system Ax + damps = b for solution by CRAIG. The matrix A is m by n and is constructed in the form A = HYD*HZ, where D is an m by n diagonal matrix, and HY and HZ are Householder transformations. |
| lu1DCP | lusol | Subroutine | |
| lu1DPP | lusol | Subroutine | |
| lu1fac | lusol | Subroutine | ! nelem = numnz !!! Don't change nelem. ! nelem is now numnz below (it might be less than the input value). |
| lu1fad | lusol | Subroutine | ! a(ldiagU + nrowu) = abest ! This was in pivot order. !!! DEBUG |
| lu1ful | lusol | Subroutine | |
| lu1gau | lusol | Subroutine | |
| lu1mar | lusol | Subroutine | ! TPP ! Absolute test for Complete Pivoting |
| lu1mCP | lusol | Subroutine | |
| lu1mRP | lusol | Subroutine | |
| lu1mSP | lusol | Subroutine | |
| lu1mxc | lusol | Subroutine | |
| lu1mxr | lusol | Subroutine | |
| lu1or1 | lusol | Subroutine | |
| lu1or2 | lusol | Subroutine | |
| lu1or3 | lusol | Subroutine | |
| lu1or4 | lusol | Subroutine | |
| lu1pen | lusol | Subroutine | |
| lu1pq1 | lusol | Subroutine | |
| lu1pq2 | lusol | Subroutine | |
| lu1pq3 | lusol | Subroutine | |
| lu1rec | lusol | Subroutine | |
| lu1slk | lusol | Subroutine | |
| lu6chk | lusol | Subroutine | |
| lu6L | lusol | Subroutine | |
| lu6LD | lusol | Subroutine | |
| lu6Lt | lusol | Subroutine | |
| lu6sol | lusol | Subroutine | |
| lu6U | lusol | Subroutine | |
| lu6Ut | lusol | Subroutine | |
| lu7add | lusol | Subroutine | |
| lu7cyc | lusol | Subroutine | |
| lu7elm | lusol | Subroutine | |
| lu7for | lusol | Subroutine | |
| lu7rnk | lusol | Subroutine | |
| lu7zap | lusol | Subroutine | |
| lu8rpc | lusol | Subroutine | |
| manhatten_distance | aoc_utilities | Interface | |
| manhatten_distance_64 | aoc_utilities | Function | Manhattan distance between two |
| map | problem_5 | Function | |
| match | problem_12 | Function | returns true if the pattern is valid for the int list. |
| move | problem_10 | Subroutine | |
| move_piece_down | problem_22 | Subroutine | move a piece down (fall one square) if it can be moved |
| moves | problem_8 | Function | |
| moves_any_z | problem_8 | Function | |
| my_func | test1 | Subroutine | Problem function |
| my_func | test2 | Subroutine | Problem function interface for numdiff |
| nlesolver_solver | nlesolver_module | Subroutine | Main solver. |
| node_index | problem_25 | Function | find the node number for this name |
| node_number | problem_23 | Function | returns the index of these coordinates in the list of nodes (0 if it is not a node) |
| not_tree | problem_23 | Function | returns true if the cell isn't a tree |
| number_of_lines_in_file | aoc_utilities | Function | Returns the number of lines in a file (assumed to be open) |
| numsrt | dsm_module | Subroutine | Given a sequence of integers, this subroutine groups together those indices with the same sequence value and, optionally, sorts the sequence into either ascending or descending order. |
| parea | aoc_utilities | Function | given a sequence of nb points (x(i),y(i)). parea computes the area bounded by the closed polygonal curve which passes through the points in the order that they are indexed. the final point of the curve is assumed to be the first point given. therefore, it need not be listed at the end of x and y. the curve is not required to be simple. |
| parse | aoc_utilities | Interface | |
| parse_ints | aoc_utilities | Function | parse positive ints from a string that also includes text |
| parse_ints64 | aoc_utilities | Function | Parse positive ints from a string that also includes text |
| parse_nums64 | aoc_utilities | Function | parse space-deliminated ip sequence (positive or negative) |
| parse_rule | problem_19 | Function | |
| parse_rule | problem_19b | Function | |
| perturb_x_and_compute_f | numerical_differentiation_module | Subroutine | Perturb the specified optimization variable, and compute the function.
This routine is designed so that |
| perturb_x_and_compute_f_partitioned | numerical_differentiation_module | Subroutine | Perturb the specified optimization variable, and compute the function.
This routine is designed so that |
| pipe_info | problem_10 | Function | |
| populate | problem_5 | Subroutine | |
| print_cache | numdiff_cache_module | Subroutine | Print the contents of the cache. Used for debugging. |
| print_finite_difference_method | numerical_differentiation_module | Subroutine | Print the contents of a finite_diff_method. Used for debugging. |
| print_sparsity | numerical_differentiation_module | Subroutine | Print the sparsity pattern. |
| print_sparsity_matrix | numerical_differentiation_module | Subroutine | Print the sparsity pattern in matrix form. |
| print_sparsity_pattern | numerical_differentiation_module | Subroutine | Print the sparsity pattern in vector form ( |
| process | problem_19 | Function | process this part through all the workflows. |
| process | problem_19b | Function | process this part range starting with irule |
| put_in_cache | numdiff_cache_module | Subroutine | Put a value into the cache. |
| put_in_cache | aoc_cache_module | Subroutine | Put a value into the cache. |
| raise_exception | numerical_differentiation_module | Subroutine | Raise an exception. |
| rating | problem_19 | Function | |
| read_file_to_char_array | aoc_utilities | Function | Read a file into a 2d character array. |
| read_file_to_int_array | aoc_utilities | Function | Read a file into a 2d character array. |
| read_file_to_integer64_array | aoc_utilities | Function | Read a file into an ip integer array (one element per line) |
| read_file_to_integer_array | aoc_utilities | Function | Read a file into an integer array (one element per line) |
| read_line | aoc_utilities | Function | Reads the next line from a file. |
| remove_lens | problem_15_module | Subroutine | remove the lens with the label (if present) |
| resize_sparsity_vectors | numerical_differentiation_module | Subroutine | Resize the sparsity arrays after accumulating them. |
| reverse | aoc_utilities | Function | Reverse an ip vector |
| select_finite_diff_method | numerical_differentiation_module | Subroutine | Select a finite diff method of a given |
| select_finite_diff_method_for_partition_group | numerical_differentiation_module | Subroutine | Select a finite diff method of a given |
| seq | dsm_module | Subroutine | given the sparsity pattern of an |
| set_edge_vector | dag_module | Subroutine | specify the edge indices for this vertex |
| set_function | diff_module | Subroutine | Set the function in a diff_func. Must be called before diff. |
| set_numdiff_bounds | numerical_differentiation_module | Subroutine | Change the variable bounds in a numdiff_type. |
| set_numdiff_sparsity_bounds | numerical_differentiation_module | Subroutine | Sets the variable bounds for sparsity in a numdiff_type.
These are only used for |
| set_sparsity_mode | numerical_differentiation_module | Subroutine | Set sparsity mode. |
| set_sparsity_pattern | numerical_differentiation_module | Subroutine | To specify the sparsity pattern directly if it is already known. |
| set_status | nlesolver_module | Subroutine | Set status flag and message. |
| setr | dsm_module | Subroutine | given a column-oriented definition of the sparsity pattern
of an |
| simple_step | nlesolver_module | Subroutine | Take a simple step in the search direction of |
| slo | dsm_module | Subroutine | given the sparsity pattern of an |
| solve | lusol_ez_module | Subroutine | Wrapper for lu1fac + lu6sol to solve a linear system |
| solve_ez | lsqr_module | Subroutine | Wrapper for LSQR for the easy version of the class. |
| sort | aoc_utilities | Interface | |
| sort_ascending | numdiff_utilities_module | Interface | |
| sort_ascending | aoc_utilities | Subroutine | Sorts an integer array |
| sort_ascending_64 | aoc_utilities | Subroutine | |
| sort_ascending_int | numdiff_utilities_module | Subroutine | Sorts an integer array |
| sort_ascending_real | numdiff_utilities_module | Subroutine | Sorts a real array |
| split | aoc_utilities | Interface | |
| split1 | aoc_utilities | Function | Split a character string using a token. This routine is inspired by the Python split function. |
| split2 | aoc_utilities | Function | Split a |
| srtdat | dsm_module | Subroutine | given the non-zero elements of an |
| startswith | aoc_utilities | Interface | test if a string starts with a specified substring |
| startswith_cc | aoc_utilities | Function | starts with function for strings |
| startswith_cs | aoc_utilities | Function | |
| startswith_sc | aoc_utilities | Function | |
| startswith_ss | aoc_utilities | Function | |
| step | problem_21 | Subroutine | take all valid steps from any # elements in array |
| str_to_array | aoc_utilities | Function | convert the character string to an array of characters |
| str_to_int64_array_with_mapping | aoc_utilities | Function | Convert a string to a numeric array by mapping characters to integers (user-specified) |
| str_to_int_array_with_mapping | aoc_utilities | Function | Convert a string to a numeric array by mapping characters to integers (user-specified) |
| string_to_int | aoc_utilities | Function | Basic string to integer routine |
| string_to_int_64 | aoc_utilities | Function | Basic string to integer routine |
| swap | numdiff_utilities_module | Interface | |
| swap | aoc_utilities | Interface | |
| swap32 | aoc_utilities | Subroutine | Swap two integer values. |
| swap64 | aoc_utilities | Subroutine | Swap two integer values. |
| swap_hands | problem_7 | Subroutine | swap function for hand type |
| swap_int | numdiff_utilities_module | Subroutine | Swap two integer values. |
| swap_real | numdiff_utilities_module | Subroutine | Swap two integer values. |
| swap_str | aoc_utilities | Subroutine | Swap two character string values |
| terminate | numerical_differentiation_module | Subroutine | A user-callable routine. When called, it will terminate
all computations and return. The |
| terminate | diff_module | Subroutine | Can be called by the user in the function to terminate the computation.
This will set |
| test | lsqrtest_module | Subroutine | This is an example driver routine for running LSQR. It generates a test problem, solves it, and examines the results. Note that subroutine aprod must be declared external if it is used only in the call to LSQR (and acheck). |
| test | problem_12 | Subroutine | each ? can be either a . or a # check pattern to match the int list |
| test_1 | main | Subroutine | |
| test_2 | main | Subroutine | |
| traverse | problem_5 | Function | |
| traverse | problem_23 | Subroutine | traverse the graph until we get to the end and check the max distance |
| traverse | problem_25 | Subroutine | travere the graph and visit all the connected nodes |
| unique | numdiff_utilities_module | Interface | |
| unique | aoc_utilities | Interface | |
| unique32 | aoc_utilities | Function | Return only the unique values from vec. |
| unique64 | aoc_utilities | Function | Return only the unique values from vec. |
| unique_int | numdiff_utilities_module | Function | Returns only the unique elements of the vector (sorted in ascending order). |
| unique_real | numdiff_utilities_module | Function | Returns only the unique elements of the vector (sorted in ascending order). |
| update_array | problem_22 | Subroutine | populate the array using the start/end indices |
| vector_djb_hash | numdiff_cache_module | Function | DJB hash algorithm for a |
| vector_djb_hash | aoc_cache_module | Function | DJB hash algorithm for a |
| workflow_name_to_index | problem_19 | Function | get the index of this workflow in the array |
| workflow_name_to_index | problem_19b | Function | get the index of this workflow in the array |
| xcheck | lsqr_module | Subroutine | Tests if |