OpenCMISS-Iron Internal API Documentation
|
This module handles all distributed matrix vector routines. More...
Functions/Subroutines | |
subroutine | distributed_matrix_all_values_set_intg (DISTRIBUTED_MATRIX, VALUE, ERR, ERROR,) |
Sets all values in an integer distributed matrix to the specified value. More... | |
subroutine | distributed_matrix_all_values_set_sp (DISTRIBUTED_MATRIX, VALUE, ERR, ERROR,) |
Sets all values in a single precision distributed matrix to the specified value. More... | |
subroutine | distributed_matrix_all_values_set_dp (DISTRIBUTED_MATRIX, VALUE, ERR, ERROR,) |
Sets all values in a double precision distributed matrix to the specified value. More... | |
subroutine | distributed_matrix_all_values_set_l (DISTRIBUTED_MATRIX, VALUE, ERR, ERROR,) |
Sets all values in a logical distributed matrix to the specified value. More... | |
subroutine | distributed_matrix_cmiss_create_finish (CMISS_MATRIX, ERR, ERROR,) |
Finishes the creation of a CMISS distributed matrix. More... | |
subroutine | distributed_matrix_cmiss_finalise (CMISS_MATRIX, ERR, ERROR,) |
Finalise a CMISS distributed matrix. More... | |
subroutine | distributed_matrix_cmiss_initialise (DISTRIBUTED_MATRIX, ERR, ERROR,) |
Intialises a CMISS distributed matrix. More... | |
subroutine, public | distributed_matrix_create_finish (DISTRIBUTED_MATRIX, ERR, ERROR,) |
Finishes the creation of a distributed matrix. More... | |
subroutine, public | distributed_matrix_create_start (ROW_DOMAIN_MAPPING, COLUMN_DOMAIN_MAPPING, DISTRIBUTED_MATRIX, ERR, ERROR,) |
Starts the creation of a distributed matrix. More... | |
subroutine | distributed_matrix_data_get_intg (DISTRIBUTED_MATRIX, DATA, ERR, ERROR,) |
Returns a pointer to the data of an integer distributed matrix. Note: the values can be used for read operations but a DISTRIBUTED_MATRIX_VALUES_SET call must be used to change any values. The pointer should not be deallocated and a DISTRIBUTED_MATRIX_DATA_RESTORE call must be used after the data has finished being used. More... | |
subroutine | distributed_matrix_data_get_sp (DISTRIBUTED_MATRIX, DATA, ERR, ERROR,) |
Returns a pointer to the data of a single precision distributed matrix. Note: the values can be used for read operations but a DISTRIBUTED_MATRIX_VALUES_SET call must be used to change any values. The pointer should not be deallocated and a DISTRIBUTED_MATRIX_DATA_RESTORE call must be used after the data has finished being used. More... | |
subroutine | distributed_matrix_data_get_dp (DISTRIBUTED_MATRIX, DATA, ERR, ERROR,) |
Returns a pointer to the data of a double precision distributed matrix. Note: the values can be used for read operations but a DISTRIBUTED_MATRIX_VALUES_SET call must be used to change any values. The pointer should not be deallocated and a DISTRIBUTED_MATRIX_DATA_RESTORE call must be used after the data has finished being used. More... | |
subroutine | distributed_matrix_data_get_l (DISTRIBUTED_MATRIX, DATA, ERR, ERROR,) |
Returns a pointer to the data of a logical distributed matrix. Note: the values can be used for read operations but a DISTRIBUTED_MATRIX_VALUES_SET call must be used to change any values. The pointer should not be deallocated and a DISTRIBUTED_MATRIX_DATA_RESTORE call must be used after the data has finished being used. More... | |
subroutine | distributed_matrix_data_restore_intg (DISTRIBUTED_MATRIX, DATA, ERR, ERROR,) |
Restores the integer data pointer returned from DISTRIBUTED_MATRIX_DATA_GET once the data has finished being used. More... | |
subroutine | distributed_matrix_data_restore_sp (DISTRIBUTED_MATRIX, DATA, ERR, ERROR,) |
Restores the single precision data pointer returned from DISTRIBUTED_MATRIX_DATA_GET once the data has finished being used. More... | |
subroutine | distributed_matrix_data_restore_dp (DISTRIBUTED_MATRIX, DATA, ERR, ERROR,) |
Restores the double precision data pointer returned from DISTRIBUTED_MATRIX_DATA_GET once the data has finished being used. More... | |
subroutine | distributed_matrix_data_restore_l (DISTRIBUTED_MATRIX, DATA, ERR, ERROR,) |
Restores the logical data pointer returned from DISTRIBUTED_MATRIX_DATA_GET once the data has finished being used. More... | |
subroutine, public | distributedmatrix_datatypeget (matrix, dataType, err, error,) |
Gets the data type of a distributed matrix. More... | |
subroutine, public | distributed_matrix_data_type_set (DISTRIBUTED_MATRIX, DATA_TYPE, ERR, ERROR,) |
Sets/changes the data type of a distributed matrix. More... | |
subroutine, public | distributedmatrix_dimensionsget (distributedMatrix, m, n, err, error,) |
Gets the dimensions of a matrix on this computational node. More... | |
subroutine, public | distributed_matrix_destroy (DISTRIBUTED_MATRIX, ERR, ERROR,) |
Destroys a distributed matrix. More... | |
subroutine, public | distributed_matrix_duplicate (DISTRIBUTED_MATRIX, NEW_DISTRIBUTED_MATRIX, ERR, ERROR,) |
Duplicates the structure of a distributed matrix and returns a pointer to the new matrix in NEW_DISTRIBUTED_MATRIX. More... | |
subroutine | distributed_matrix_finalise (DISTRIBUTED_MATRIX, ERR, ERROR,) |
Finalises a distributed matrix and deallocates all memory. More... | |
subroutine, public | distributed_matrix_form (DISTRIBUTED_MATRIX, ERR, ERROR,) |
Forms a distributed matrix by initialising the structure of the matrix to zero. More... | |
subroutine, public | distributed_matrix_ghosting_type_set (DISTRIBUTED_MATRIX, GHOSTING_TYPE, ERR, ERROR,) |
Sets/changes the ghosting type for a distributed matrix. More... | |
subroutine, public | distributed_matrix_library_type_set (DISTRIBUTED_MATRIX, LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the library type for a distributed matrix. More... | |
subroutine | distributed_matrix_initialise (ROW_DOMAIN_MAPPING, COLUMN_DOMAIN_MAPPING, DISTRIBUTED_MATRIX, ERR, ERROR,) |
Intialises a distributed matrix. More... | |
subroutine, public | distributed_matrix_max_columns_per_row_get (DISTRIBUTED_MATRIX, MAX_COLUMNS_PER_ROW, ERR, ERROR,) |
Gets the maximum number of columns in each row of a distributed matrix. More... | |
subroutine, public | distributed_matrix_number_non_zeros_set (DISTRIBUTED_MATRIX, NUMBER_NON_ZEROS, ERR, ERROR,) |
Sets/changes the number of non zeros for a distributed matrix. More... | |
subroutine, public | distributed_matrix_number_non_zeros_get (DISTRIBUTED_MATRIX, NUMBER_NON_ZEROS, ERR, ERROR,) |
Gets the number of non zeros for a distributed matrix. More... | |
subroutine, public | distributed_matrix_linklist_set (DISTRIBUTED_MATRIX, LIST, ERR, ERROR,) |
Sets/changes the LIST STRUCTURE for a distributed matrix. More... | |
subroutine, public | distributed_matrix_linklist_get (DISTRIBUTED_MATRIX, LIST, ERR, ERROR,) |
Gets the LINKLIST STURUCTURE for a distributed matrix. More... | |
subroutine, public | distributed_matrix_output (ID, DISTRIBUTED_MATRIX, ERR, ERROR,) |
Outputs a distributed matrix. More... | |
subroutine, public | distributed_matrix_override_set_on (DISTRIBUTED_MATRIX, OVERRIDE_MATRIX, ERR, ERROR,) |
Sets the override matrix for a distributed matrix. More... | |
subroutine, public | distributed_matrix_override_set_off (DISTRIBUTED_MATRIX, ERR, ERROR,) |
Turns off the override matrix for a distributed matrix. More... | |
subroutine | distributed_matrix_petsc_create_finish (PETSC_MATRIX, ERR, ERROR,) |
Finishes the creation of a CMISS distributed matrix. More... | |
subroutine | distributed_matrix_petsc_finalise (PETSC_MATRIX, ERR, ERROR,) |
Finalise a PETSc distributed matrix. More... | |
subroutine | distributed_matrix_petsc_initialise (DISTRIBUTED_MATRIX, ERR, ERROR,) |
Intialises a PETSc distributed matrix. More... | |
subroutine, public | distributed_matrix_storage_locations_get (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, ERR, ERROR,) |
Gets the storage locations (sparsity pattern) for a distributed matrix. More... | |
subroutine, public | distributed_matrix_storage_locations_set (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, ERR, ERROR,) |
Sets the storage locations (sparsity pattern) in a distributed matrix to that specified by the row and column indices. More... | |
subroutine, public | distributed_matrix_storage_type_get (DISTRIBUTED_MATRIX, STORAGE_TYPE, ERR, ERROR,) |
Gets the storage type of a distributed matrix. More... | |
subroutine, public | distributed_matrix_storage_type_set (DISTRIBUTED_MATRIX, STORAGE_TYPE, ERR, ERROR,) |
Sets/changes the storage type of a distributed matrix. More... | |
subroutine, public | distributed_matrix_update_finish (DISTRIBUTED_MATRIX, ERR, ERROR,) |
Finishes the update procedure for a distributed matrix. This routine will wait until all transfers have completed! More... | |
subroutine, public | distributed_matrix_update_isfinished (DISTRIBUTED_MATRIX, ISFINISHED, ERR, ERROR,) |
Tests to see if a distributed matrix update has finised. More... | |
subroutine, public | distributed_matrix_update_waitfinished (DISTRIBUTED_MATRIX, ERR, ERROR,) |
Waits until a distributed matrix update has finised. More... | |
subroutine, public | distributed_matrix_update_start (DISTRIBUTED_MATRIX, ERR, ERROR,) |
Starts the update procedure for a distributed matrix. More... | |
subroutine | distributed_matrix_values_add_intg (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Adds values to a distributed integer matrix. More... | |
subroutine | distributed_matrix_values_add_intg1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Adds one value to a distributed integer matrix. More... | |
subroutine | distributed_matrix_values_add_intg2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Adds a matrix of values to a distributed integer matrix. More... | |
subroutine | distributed_matrix_values_add_sp (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Adds values to a distributed single precision matrix. More... | |
subroutine | distributed_matrix_values_add_sp1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Adds one value to a distributed single precision matrix. More... | |
subroutine | distributed_matrix_values_add_sp2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Adds a matrix of values to a distributed single precision matrix. More... | |
subroutine | distributed_matrix_values_add_dp (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Adds values to a distributed double precision matrix. More... | |
subroutine | distributed_matrix_values_add_dp1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Adds one value to a distributed double precision matrix. More... | |
subroutine | distributed_matrix_values_add_dp2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Adds a matrix of values to a distributed double precision matrix. More... | |
subroutine | distributed_matrix_values_add_l (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Adds values to a distributed logical matrix. More... | |
subroutine | distributed_matrix_values_add_l1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Adds one value to a distributed logical matrix. More... | |
subroutine | distributed_matrix_values_add_l2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Adds a matrix of values to a distributed logical matrix. More... | |
subroutine | distributed_matrix_values_get_intg (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Gets values in a distributed integer matrix. More... | |
subroutine | distributed_matrix_values_get_intg1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Gets one value in a distributed integer matrix. More... | |
subroutine | distributed_matrix_values_get_intg2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Gets a matrix of values in a distributed integer matrix. More... | |
subroutine | distributed_matrix_values_get_sp (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Gets values in a distributed single precision matrix. More... | |
subroutine | distributed_matrix_values_get_sp1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Gets one value in a distributed single precision matrix. More... | |
subroutine | distributed_matrix_values_get_sp2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Gets a matrix of values in a distributed single precision matrix. More... | |
subroutine | distributed_matrix_values_get_dp (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Gets values in a distributed double precision matrix. More... | |
subroutine | distributed_matrix_values_get_dp1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Gets one value in a distributed double precision matrix. More... | |
subroutine | distributed_matrix_values_get_dp2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Gets a matrix of values in a distributed double precision matrix. More... | |
subroutine | distributed_matrix_values_get_l (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Gets values in a distributed logical matrix. More... | |
subroutine | distributed_matrix_values_get_l1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Gets one value in a distributed logical matrix. More... | |
subroutine | distributed_matrix_values_get_l2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Gets a matrix of values in a distributed logical matrix. More... | |
subroutine | distributed_matrix_values_set_intg (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Sets values in a distributed integer matrix. More... | |
subroutine | distributed_matrix_values_set_intg1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Sets one value in a distributed integer matrix. More... | |
subroutine | distributed_matrix_values_set_intg2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Sets a matrix of values in a distributed integer matrix. More... | |
subroutine | distributed_matrix_values_set_sp (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Sets values in a distributed single precision matrix. More... | |
subroutine | distributed_matrix_values_set_sp1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Sets one value in a distributed single precision matrix. More... | |
subroutine | distributed_matrix_values_set_sp2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Sets a matrix of values in a distributed single precision matrix. More... | |
subroutine | distributed_matrix_values_set_dp (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Sets values in a distributed double precision matrix. More... | |
subroutine | distributed_matrix_values_set_dp1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Sets one value in a distributed double precision matrix. More... | |
subroutine | distributed_matrix_values_set_dp2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Sets a matrix of values in a distributed double precision matrix. More... | |
subroutine | distributed_matrix_values_set_l (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Sets values in a distributed logical matrix. More... | |
subroutine | distributed_matrix_values_set_l1 (DISTRIBUTED_MATRIX, ROW_INDEX, COLUMN_INDEX, VALUE, ERR, ERROR,) |
Sets one value in a distributed logical matrix. More... | |
subroutine | distributed_matrix_values_set_l2 (DISTRIBUTED_MATRIX, ROW_INDICES, COLUMN_INDICES, VALUES, ERR, ERROR,) |
Sets a matrix of values in a distributed logical matrix. More... | |
subroutine, public | distributed_matrix_by_vector_add (ROW_SELECTION_TYPE, ALPHA, DISTRIBUTED_MATRIX, DISTRIBUTED_VECTOR, DISTRIBUTED_PRODUCT, ERR, ERROR,) |
Calculates the matrix vector product of a distrubted matrix times a distributed vector and adds it to the distributed product vector. NOTE: This will only work for specific CMISS distributed matrices i.e., ones in which the columns of the matrix are distributed in the same way as the rows of the multiplied vector are distributed, and the rows of the matrix are distributed in the same way as the rows of the product vector. More... | |
subroutine | distributed_vector_all_values_set_intg (DISTRIBUTED_VECTOR, VALUE, ERR, ERROR,) |
Sets all values in an integer distributed vector to the specified value. More... | |
subroutine | distributed_vector_all_values_set_sp (DISTRIBUTED_VECTOR, VALUE, ERR, ERROR,) |
Sets all values in a single precision distributed vector to the specified value. More... | |
subroutine | distributed_vector_all_values_set_dp (DISTRIBUTED_VECTOR, VALUE, ERR, ERROR,) |
Sets all values in a double precision distributed vector to the specified value. More... | |
subroutine | distributed_vector_all_values_set_l (DISTRIBUTED_VECTOR, VALUE, ERR, ERROR,) |
Sets all values in a logical distributed_vector to the specified value. More... | |
subroutine | distributed_vector_copy_intg (FROM_VECTOR, TO_VECTOR, ALPHA, ERR, ERROR,) |
Copies alpha times an integer distributed vector to another distributed vector. More... | |
subroutine | distributed_vector_copy_dp (FROM_VECTOR, TO_VECTOR, ALPHA, ERR, ERROR,) |
Copies alpha times a double precision distributed vector to another distributed vector. More... | |
subroutine | distributed_vector_copy_sp (FROM_VECTOR, TO_VECTOR, ALPHA, ERR, ERROR,) |
Copies alpha times a single precision distributed vector to another distributed vector. More... | |
subroutine | distributed_vector_copy_l (FROM_VECTOR, TO_VECTOR, ALPHA, ERR, ERROR,) |
Copies alpha times a logical distributed vector to another distributed vector. More... | |
subroutine | distributed_vector_cmiss_finalise (CMISS_VECTOR, ERR, ERROR,) |
Finalise a CMISS distributed vector. More... | |
subroutine | distributed_vector_cmiss_initialise (DISTRIBUTED_VECTOR, ERR, ERROR,) |
Intialises a CMISS distributed vector. More... | |
subroutine | distributed_vector_cmiss_create_finish (CMISS_VECTOR, ERR, ERROR,) |
Finishes the creation of a CMISS distributed vector. More... | |
subroutine, public | distributed_vector_create_finish (DISTRIBUTED_VECTOR, ERR, ERROR,) |
Finishes the creation a distributed vector. More... | |
subroutine, public | distributed_vector_create_start (DOMAIN_MAPPING, DISTRIBUTED_VECTOR, ERR, ERROR,) |
Starts the creation a distributed vector. More... | |
subroutine, public | distributedvector_datatypeget (vector, dataType, err, error,) |
Gets the data type of a distributed vector. More... | |
subroutine, public | distributed_vector_data_type_set (DISTRIBUTED_VECTOR, DATA_TYPE, ERR, ERROR,) |
Sets/changes the data type of a distributed vector. More... | |
subroutine, public | distributed_vector_destroy (DISTRIBUTED_VECTOR, ERR, ERROR,) |
Destroys a distributed vector. More... | |
subroutine, public | distributed_vector_duplicate (DISTRIBUTED_VECTOR, NEW_DISTRIBUTED_VECTOR, ERR, ERROR,) |
Duplicates the structure of a distributed vector and returns a pointer to the new distributed vector in NEW_DISTRIBUTED_VECTOR. More... | |
subroutine | distributed_vector_finalise (DISTRIBUTED_VECTOR, ERR, ERROR,) |
Finalises a distributed vector and deallocates all memory. More... | |
subroutine | distributed_vector_initialise (DOMAIN_MAPPING, DISTRIBUTED_VECTOR, ERR, ERROR,) |
Initialises a distributed vector. More... | |
subroutine | distributed_vector_data_get_intg (DISTRIBUTED_VECTOR, DATA, ERR, ERROR,) |
Returns a pointer to the data of an integer distributed vector. Note: the values can be used for read operations but a DISTRIBUTED_VECTOR_VALUES_SET call must be used to change any values. The pointer should not be deallocated. More... | |
subroutine | distributed_vector_data_get_sp (DISTRIBUTED_VECTOR, DATA, ERR, ERROR,) |
Returns a pointer to the data of a single precision distributed vector. Note: the values can be used for read operations but a DISTRIBUTED_VECTOR_VALUES_SET call must be used to change any values. The pointer should not be deallocated. More... | |
subroutine | distributed_vector_data_get_dp (DISTRIBUTED_VECTOR, DATA, ERR, ERROR,) |
Returns a pointer to the data of a double precision distributed vector. Note: the values can be used for read operations but a DISTRIBUTED_VECTOR_VALUES_SET call must be used to change any values. The pointer should not be deallocated. More... | |
subroutine | distributed_vector_data_get_l (DISTRIBUTED_VECTOR, DATA, ERR, ERROR,) |
Returns a pointer to the data of a logical distributed vector. Note: the values can be used for read operations but a DISTRIBUTED_VECTOR_VALUES_SET call must be used to change any values. The pointer should not be deallocated. More... | |
subroutine | distributed_vector_data_restore_intg (DISTRIBUTED_VECTOR, DATA, ERR, ERROR,) |
Restores the integer data pointer returned from DISTRIBUTED_VECTOR_DATA_GET once the data has finished being used. More... | |
subroutine | distributed_vector_data_restore_sp (DISTRIBUTED_VECTOR, DATA, ERR, ERROR,) |
Restores the single precision data pointer returned from DISTRIBUTED_VECTOR_DATA_GET once the data has finished being used. More... | |
subroutine | distributed_vector_data_restore_dp (DISTRIBUTED_VECTOR, DATA, ERR, ERROR,) |
Restores the double precision data pointer returned from DISTRIBUTED_VECTOR_DATA_GET once the data has finished being used. More... | |
subroutine | distributed_vector_data_restore_l (DISTRIBUTED_VECTOR, DATA, ERR, ERROR,) |
Restores the logical data pointer returned from DISTRIBUTED_VECTOR_DATA_GET once the data has finished being used. More... | |
subroutine, public | distributed_vector_ghosting_type_set (DISTRIBUTED_VECTOR, GHOSTING_TYPE, ERR, ERROR,) |
Sets/changes the ghosting type for a distributed vector. More... | |
subroutine, public | distributed_vector_library_type_set (DISTRIBUTED_VECTOR, LIBRARY_TYPE, ERR, ERROR,) |
Sets/changes the library type for a distributed vector. More... | |
subroutine, public | distributed_vector_output (ID, DISTRIBUTED_VECTOR, ERR, ERROR,) |
Outputs a distributed vector to the specified output ID. More... | |
subroutine, public | distributed_vector_override_set_on (DISTRIBUTED_VECTOR, OVERRIDE_VECTOR, ERR, ERROR,) |
Sets the override vector for a distributed vector. More... | |
subroutine, public | distributed_vector_override_set_off (DISTRIBUTED_VECTOR, ERR, ERROR,) |
Turns off the override vector for a distributed vector. More... | |
subroutine | distributed_vector_petsc_create_finish (PETSC_VECTOR, ERR, ERROR,) |
Finishes the creation of a PETSc distributed vector. More... | |
subroutine | distributed_vector_petsc_finalise (PETSC_VECTOR, ERR, ERROR,) |
Finalise a PETSc distributed vector. More... | |
subroutine | distributed_vector_petsc_initialise (DISTRIBUTED_VECTOR, ERR, ERROR,) |
Intialises a PETSc distributed vector. More... | |
subroutine | distributed_vector_cmiss_transfer_finalise (CMISS_VECTOR, domain_idx, ERR, ERROR,) |
Finalises a CMISS distributed vector transfer information and deallocates all memory. More... | |
subroutine | distributedvector_cmisstransferinitialise (CMISS_VECTOR, domain_idx, ERR, ERROR,) |
Initialises a CMISS distributed vector transfer information. More... | |
subroutine, public | distributed_vector_update_finish (DISTRIBUTED_VECTOR, ERR, ERROR,) |
Finishes the (ghost) update procedure for a distributed vector. This routine will wait until all transfers have completed! More... | |
subroutine, public | distributed_vector_update_isfinished (DISTRIBUTED_VECTOR, ISFINISHED, ERR, ERROR,) |
Tests to see if a distributed vector update has finised! More... | |
subroutine, public | distributed_vector_update_waitfinished (DISTRIBUTED_VECTOR, ERR, ERROR,) |
Waits until a distributed vector update has finised. More... | |
subroutine, public | distributed_vector_update_start (DISTRIBUTED_VECTOR, ERR, ERROR,) |
Starts the (ghost) update procedure for a distributed vector. More... | |
subroutine, public | distributedvector_l2norm (distributedVector, norm, err, error,) |
Calculates the L2 norm of a distributed vector values on this computational node. More... | |
subroutine | distributedvector_vecdotintg (distributedVectorA, distributedVectorB, dotProduct, err, error,) |
Calculates the dot product of 2 distributed integer vectors on this computational node. More... | |
subroutine | distributedvector_vecdotsp (distributedVectorA, distributedVectorB, dotProduct, err, error,) |
Calculates the dot product of 2 distributed single-precision vectors on this computational node. More... | |
subroutine | distributedvector_vecdotdp (distributedVectorA, distributedVectorB, dotProduct, err, error,) |
Calculates the dot product of 2 distributed double-precision vectors on this computational node. More... | |
subroutine | distributed_vector_values_add_intg (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Adds values to a distributed integer vector. More... | |
subroutine | distributed_vector_values_add_intg1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Adds one value to a distributed integer vector. More... | |
subroutine | distributed_vector_values_add_sp (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Adds values to a distributed single precision vector. More... | |
subroutine | distributed_vector_values_add_sp1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Adds one value to a distributed single precision vector. More... | |
subroutine | distributed_vector_values_add_dp (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Adds values to a distributed double precision vector. More... | |
subroutine | distributed_vector_values_add_dp1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Adds one value to a distributed double precision vector. More... | |
subroutine | distributed_vector_values_add_l (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Adds values to a distributed logical vector. More... | |
subroutine | distributed_vector_values_add_l1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Adds one value to a distributed logical vector. More... | |
subroutine | distributed_vector_values_get_intg (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Gets values in a distributed integer vector. More... | |
subroutine | distributed_vector_values_get_intg1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Gets one value in a distributed integer vector. More... | |
subroutine | distributed_vector_values_get_sp (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Gets values in a distributed single precision vector. More... | |
subroutine | distributed_vector_values_get_sp1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Gets one value in a distributed single precision vector. More... | |
subroutine | distributed_vector_values_get_dp (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Gets values in a distributed double precision vector. More... | |
subroutine | distributed_vector_values_get_dp1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Gets one value in a distributed double precision vector. More... | |
subroutine | distributed_vector_values_get_l (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Gets values in a distributed logical vector. More... | |
subroutine | distributed_vector_values_get_l1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Gets one value in a distributed logical vector. More... | |
subroutine | distributed_vector_values_set_intg (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Sets values in a distributed integer vector. More... | |
subroutine | distributed_vector_values_set_intg1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Sets one value in a distributed integer vector. More... | |
subroutine | distributed_vector_values_set_sp (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Sets values in a distributed single precision vector. More... | |
subroutine | distributed_vector_values_set_sp1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Sets one value in a distributed single precision vector. More... | |
subroutine | distributed_vector_values_set_dp (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Sets values in a distributed double precision vector. More... | |
subroutine | distributed_vector_values_set_dp1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Sets one value in a distributed double precision vector. More... | |
subroutine | distributed_vector_values_set_l (DISTRIBUTED_VECTOR, INDICES, VALUES, ERR, ERROR,) |
Sets values in a distributed logical vector. More... | |
subroutine | distributed_vector_values_set_l1 (DISTRIBUTED_VECTOR, INDEX, VALUE, ERR, ERROR,) |
Sets one value in a distributed logical vector. More... | |
Variables | |
integer(intg), parameter, public | distributed_matrix_vector_cmiss_type =LIBRARY_CMISS_TYPE |
CMISS distributed matrix-vector library type. More... | |
integer(intg), parameter, public | distributed_matrix_vector_petsc_type =LIBRARY_PETSC_TYPE |
PETSc distributed matrix-vector library type. More... | |
integer(intg), parameter, public | distributed_matrix_vector_intg_type =MATRIX_VECTOR_INTG_TYPE |
Integer distributed matrix-vector data type. More... | |
integer(intg), parameter, public | distributed_matrix_vector_sp_type =MATRIX_VECTOR_SP_TYPE |
Single precision real distributed matrix-vector data type. More... | |
integer(intg), parameter, public | distributed_matrix_vector_dp_type =MATRIX_VECTOR_DP_TYPE |
Double precision real distributed matrix-vector data type. More... | |
integer(intg), parameter, public | distributed_matrix_vector_l_type =MATRIX_VECTOR_L_TYPE |
Logical distributed matrix-vector data type. More... | |
integer(intg), parameter, public | distributed_matrix_block_storage_type =MATRIX_BLOCK_STORAGE_TYPE |
Distributed matrix block storage type. More... | |
integer(intg), parameter, public | distributed_matrix_diagonal_storage_type =MATRIX_DIAGONAL_STORAGE_TYPE |
Distributed matrix diagonal storage type. More... | |
integer(intg), parameter, public | distributed_matrix_column_major_storage_type =MATRIX_COLUMN_MAJOR_STORAGE_TYPE |
Distributed matrix column major storage type. More... | |
integer(intg), parameter, public | distributed_matrix_row_major_storage_type =MATRIX_ROW_MAJOR_STORAGE_TYPE |
Distributed matrix row major storage type. More... | |
integer(intg), parameter, public | distributed_matrix_compressed_row_storage_type =MATRIX_COMPRESSED_ROW_STORAGE_TYPE |
Distributed matrix compressed row storage type. More... | |
integer(intg), parameter, public | distributed_matrix_compressed_column_storage_type =MATRIX_COMPRESSED_COLUMN_STORAGE_TYPE |
Distributed matrix compressed column storage type. More... | |
integer(intg), parameter, public | distributed_matrix_row_column_storage_type =MATRIX_ROW_COLUMN_STORAGE_TYPE |
Distributed matrix row-column storage type. More... | |
integer(intg), parameter, public | distributed_matrix_vector_include_ghosts_type =1 |
Include ghost values in the distributed matrix/vector. More... | |
integer(intg), parameter, public | distributed_matrix_vector_no_ghosts_type =2 |
Do not include ghost values/rows in the distributed matrix/vector. More... | |
integer(intg), save | distributed_data_id =100000000 |
This module handles all distributed matrix vector routines.
|
private |
Sets all values in a double precision distributed matrix to the specified value.
distributed_matrix | A pointer to the distributed matrix | |
[in] | value | The value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 786 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matzeroentries().
|
private |
Sets all values in an integer distributed matrix to the specified value.
distributed_matrix | A pointer to the distributed matrix | |
[in] | value | The value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 694 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets all values in a logical distributed matrix to the specified value.
distributed_matrix | A pointer to the distributed matrix | |
[in] | value | The value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 844 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets all values in a single precision distributed matrix to the specified value.
distributed_matrix | A pointer to the distributed matrix | |
[in] | value | The value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 740 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
subroutine, public distributed_matrix_vector::distributed_matrix_by_vector_add | ( | integer(intg), intent(in) | ROW_SELECTION_TYPE, |
real(dp), intent(in) | ALPHA, | ||
type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, | ||
type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, | ||
type(distributed_vector_type), pointer | DISTRIBUTED_PRODUCT, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Calculates the matrix vector product of a distrubted matrix times a distributed vector and adds it to the distributed product vector. NOTE: This will only work for specific CMISS distributed matrices i.e., ones in which the columns of the matrix are distributed in the same way as the rows of the multiplied vector are distributed, and the rows of the matrix are distributed in the same way as the rows of the product vector.
[in] | row_selection_type | The row selection for the matrix-vector product |
[in] | alpha | The multiplicative factor for the distributed matrix |
distributed_matrix | A pointer to the distributed matrix | |
distributed_vector | A pointer to the distributed vector | |
distributed_product | On exit, the value of the matrix vector product added to the distributed product vector. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5387 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_dp_type, distributed_matrix_vector_include_ghosts_type, distributed_matrix_vector_intg_type, distributed_matrix_vector_l_type, distributed_matrix_vector_no_ghosts_type, distributed_matrix_vector_petsc_type, distributed_matrix_vector_sp_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_block_storage_type, matrix_vector::matrix_column_major_storage_type, matrix_vector::matrix_compressed_column_storage_type, matrix_vector::matrix_compressed_row_storage_type, matrix_vector::matrix_diagonal_storage_type, matrix_vector::matrix_row_column_storage_type, and matrix_vector::matrix_row_major_storage_type.
|
private |
Finishes the creation of a CMISS distributed matrix.
cmiss_matrix | A pointer to the distributed CMISS matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 890 of file distributed_matrix_vector.f90.
References distributed_data_id, distributed_matrix_cmiss_finalise(), base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_create_finish().
Referenced by distributed_matrix_create_finish().
|
private |
Finalise a CMISS distributed matrix.
cmiss_matrix | A pointer to the CMISS distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 933 of file distributed_matrix_vector.f90.
References base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_destroy().
Referenced by distributed_matrix_cmiss_create_finish(), distributed_matrix_cmiss_initialise(), distributed_matrix_finalise(), and distributed_matrix_library_type_set().
|
private |
Intialises a CMISS distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 959 of file distributed_matrix_vector.f90.
References distributed_matrix_cmiss_finalise(), distributed_matrix_vector_cmiss_type, distributed_matrix_vector_include_ghosts_type, distributed_matrix_vector_no_ghosts_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_block_storage_type, matrix_vector::matrix_create_start(), matrix_vector::matrix_data_type_set(), matrix_vector::matrix_size_set(), matrix_vector::matrix_storage_type_set(), and matrix_vector::matrix_vector_dp_type.
Referenced by distributed_matrix_initialise(), and distributed_matrix_library_type_set().
subroutine, public distributed_matrix_vector::distributed_matrix_create_finish | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Finishes the creation of a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1025 of file distributed_matrix_vector.f90.
References distributed_matrix_cmiss_create_finish(), distributed_matrix_finalise(), distributed_matrix_petsc_create_finish(), distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
Referenced by distributed_matrix_duplicate(), equations_matrices_routines::equations_matrices_create_finish(), and solver_matrices_routines::solver_matrices_create_finish().
subroutine, public distributed_matrix_vector::distributed_matrix_create_start | ( | type(domain_mapping_type), pointer | ROW_DOMAIN_MAPPING, |
type(domain_mapping_type), pointer | COLUMN_DOMAIN_MAPPING, | ||
type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Starts the creation of a distributed matrix.
row_domain_mapping | A pointer to the row domain mapping to be used for the distribution | |
column_domain_mapping | A pointer to the column domain mapping to be used for the distribution | |
distributed_matrix | On return a pointer to the distributed matrix being created | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1069 of file distributed_matrix_vector.f90.
References distributed_matrix_finalise(), distributed_matrix_initialise(), base_routines::enters(), and base_routines::exits().
Referenced by distributed_matrix_duplicate(), equations_matrices_routines::equations_matrices_create_finish(), and solver_matrices_routines::solver_matrices_create_finish().
|
private |
Returns a pointer to the data of a double precision distributed matrix. Note: the values can be used for read operations but a DISTRIBUTED_MATRIX_VALUES_SET call must be used to change any values. The pointer should not be deallocated and a DISTRIBUTED_MATRIX_DATA_RESTORE call must be used after the data has finished being used.
distributed_matrix | A pointer to the distributed matrix | |
data | On return a pointer to the distributed matrix data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1220 of file distributed_matrix_vector.f90.
References distributed_matrix_block_storage_type, distributed_matrix_column_major_storage_type, distributed_matrix_compressed_column_storage_type, distributed_matrix_compressed_row_storage_type, distributed_matrix_diagonal_storage_type, distributed_matrix_row_column_storage_type, distributed_matrix_row_major_storage_type, distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), cmisspetsc::petsc_matdensegetarrayf90(), and cmisspetsc::petsc_matseqaijgetarrayf90().
|
private |
Returns a pointer to the data of an integer distributed matrix. Note: the values can be used for read operations but a DISTRIBUTED_MATRIX_VALUES_SET call must be used to change any values. The pointer should not be deallocated and a DISTRIBUTED_MATRIX_DATA_RESTORE call must be used after the data has finished being used.
distributed_matrix | A pointer to the distributed matrix | |
data | On return a pointer to the distributed matrix data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1118 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Returns a pointer to the data of a logical distributed matrix. Note: the values can be used for read operations but a DISTRIBUTED_MATRIX_VALUES_SET call must be used to change any values. The pointer should not be deallocated and a DISTRIBUTED_MATRIX_DATA_RESTORE call must be used after the data has finished being used.
distributed_matrix | A pointer to the distributed matrix | |
data | On return a pointer to the distributed matrix data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1347 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Returns a pointer to the data of a single precision distributed matrix. Note: the values can be used for read operations but a DISTRIBUTED_MATRIX_VALUES_SET call must be used to change any values. The pointer should not be deallocated and a DISTRIBUTED_MATRIX_DATA_RESTORE call must be used after the data has finished being used.
distributed_matrix | A pointer to the distributed matrix | |
data | On return a pointer to the distributed matrix data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1169 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Restores the double precision data pointer returned from DISTRIBUTED_MATRIX_DATA_GET once the data has finished being used.
distributed_matrix | A pointer to the distributed matrix | |
data | A pointer to the distributed matrix data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1490 of file distributed_matrix_vector.f90.
References distributed_matrix_block_storage_type, distributed_matrix_column_major_storage_type, distributed_matrix_compressed_column_storage_type, distributed_matrix_compressed_row_storage_type, distributed_matrix_diagonal_storage_type, distributed_matrix_row_column_storage_type, distributed_matrix_row_major_storage_type, distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), cmisspetsc::petsc_matdenserestorearrayf90(), and cmisspetsc::petsc_matseqaijrestorearrayf90().
|
private |
Restores the integer data pointer returned from DISTRIBUTED_MATRIX_DATA_GET once the data has finished being used.
distributed_matrix | A pointer to the distributed matrix | |
data | The a pointer to the distributed matrix data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1398 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Restores the logical data pointer returned from DISTRIBUTED_MATRIX_DATA_GET once the data has finished being used.
distributed_matrix | A pointer to the distributed matrix | |
data | A pointer to the distributed matrix data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1610 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Restores the single precision data pointer returned from DISTRIBUTED_MATRIX_DATA_GET once the data has finished being used.
distributed_matrix | A pointer to the distributed matrix | |
data | A pointer to the distributed matrix data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1444 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
subroutine, public distributed_matrix_vector::distributed_matrix_data_type_set | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(in) | DATA_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the data type of a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | data_type | The data type to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1687 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_dp_type, distributed_matrix_vector_intg_type, distributed_matrix_vector_l_type, distributed_matrix_vector_petsc_type, distributed_matrix_vector_sp_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_data_type_set().
Referenced by equations_matrices_routines::equations_matrices_create_finish(), and solver_matrices_routines::solver_matrices_create_finish().
subroutine, public distributed_matrix_vector::distributed_matrix_destroy | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Destroys a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1807 of file distributed_matrix_vector.f90.
References distributed_matrix_finalise(), base_routines::enters(), and base_routines::exits().
Referenced by equations_matrices_routines::equations_jacobian_finalise(), equations_matrices_routines::equations_matrix_finalise(), and solver_matrices_routines::solver_matrix_finalise().
subroutine, public distributed_matrix_vector::distributed_matrix_duplicate | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
type(distributed_matrix_type), pointer | NEW_DISTRIBUTED_MATRIX, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Duplicates the structure of a distributed matrix and returns a pointer to the new matrix in NEW_DISTRIBUTED_MATRIX.
distributed_matrix | A pointer to the distributed matrix to duplicate | |
new_distributed_matrix | On return a pointer to the new duplicated distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1834 of file distributed_matrix_vector.f90.
References distributed_matrix_create_finish(), distributed_matrix_create_start(), distributed_matrix_finalise(), distributed_matrix_library_type_set(), distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_duplicate().
|
private |
Finalises a distributed matrix and deallocates all memory.
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1888 of file distributed_matrix_vector.f90.
References distributed_matrix_cmiss_finalise(), distributed_matrix_petsc_finalise(), base_routines::enters(), and base_routines::exits().
Referenced by distributed_matrix_create_finish(), distributed_matrix_create_start(), distributed_matrix_destroy(), distributed_matrix_duplicate(), and distributed_matrix_initialise().
subroutine, public distributed_matrix_vector::distributed_matrix_form | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Forms a distributed matrix by initialising the structure of the matrix to zero.
distributed_matrix | A pointer to the distributed matrix to form. | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1915 of file distributed_matrix_vector.f90.
References distributed_matrix_block_storage_type, distributed_matrix_column_major_storage_type, distributed_matrix_compressed_column_storage_type, distributed_matrix_compressed_row_storage_type, distributed_matrix_diagonal_storage_type, distributed_matrix_row_column_storage_type, distributed_matrix_row_major_storage_type, distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), cmisspetsc::petsc_matassemblybegin(), cmisspetsc::petsc_matassemblyend(), cmisspetsc::petsc_matsetvalue(), and cmisspetsc::petsc_matzeroentries().
Referenced by solver_matrices_routines::solver_matrix_form().
subroutine, public distributed_matrix_vector::distributed_matrix_ghosting_type_set | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(in) | GHOSTING_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the ghosting type for a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | ghosting_type | The ghosting type |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2007 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_include_ghosts_type, distributed_matrix_vector_no_ghosts_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_size_set().
|
private |
Intialises a distributed matrix.
row_domain_mapping | A pointer to the row domain mapping used to distribute this matrix | |
column_domain_mapping | A pointer to the column domain mapping used to distribute this matrix | |
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2151 of file distributed_matrix_vector.f90.
References distributed_matrix_cmiss_initialise(), distributed_matrix_finalise(), distributed_matrix_vector_include_ghosts_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_dp_type.
Referenced by distributed_matrix_create_start().
subroutine, public distributed_matrix_vector::distributed_matrix_library_type_set | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(in) | LIBRARY_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the library type for a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | library_type | The library type |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2087 of file distributed_matrix_vector.f90.
References distributed_matrix_cmiss_finalise(), distributed_matrix_cmiss_initialise(), distributed_matrix_petsc_finalise(), distributed_matrix_petsc_initialise(), distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
Referenced by distributed_matrix_duplicate(), and solver_matrices_routines::solver_matrices_create_finish().
subroutine, public distributed_matrix_vector::distributed_matrix_linklist_get | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
type(linkedlist), dimension(:), pointer | LIST, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Gets the LINKLIST STURUCTURE for a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2418 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_linklist_get().
subroutine, public distributed_matrix_vector::distributed_matrix_linklist_set | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
type(linkedlist), dimension(:), pointer | LIST, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the LIST STRUCTURE for a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2359 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_linklist_set().
Referenced by equations_matrices_routines::equations_matrices_create_finish().
subroutine, public distributed_matrix_vector::distributed_matrix_max_columns_per_row_get | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(out) | MAX_COLUMNS_PER_ROW, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Gets the maximum number of columns in each row of a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[out] | max_columns_per_row | On return, the maximum number of columns in each row |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2201 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_max_columns_per_row_get().
Referenced by solver_matrices_routines::solver_matrix_structure_calculate().
subroutine, public distributed_matrix_vector::distributed_matrix_number_non_zeros_get | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(out) | NUMBER_NON_ZEROS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Gets the number of non zeros for a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[out] | number_non_zeros | On return, the number of non zeros in the matrix to get |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2307 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_number_non_zeros_get().
subroutine, public distributed_matrix_vector::distributed_matrix_number_non_zeros_set | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(in) | NUMBER_NON_ZEROS, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the number of non zeros for a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | number_non_zeros | The number of non zeros in the matrix to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2251 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_number_non_zeros_set().
Referenced by equations_matrices_routines::equations_matrices_create_finish(), and solver_matrices_routines::solver_matrices_create_finish().
subroutine, public distributed_matrix_vector::distributed_matrix_output | ( | integer(intg), intent(in) | ID, |
type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Outputs a distributed matrix.
[in] | id | The ID of the output stream |
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2469 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_output(), and cmisspetsc::petsc_matview().
Referenced by equations_matrices_routines::equations_matrices_jacobian_output(), equations_matrices_routines::equations_matrices_output(), and solver_matrices_routines::solver_matrices_output().
subroutine, public distributed_matrix_vector::distributed_matrix_override_set_off | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Turns off the override matrix for a distributed matrix.
distributed_matrix | A pointer to the distributed matrix to override | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2601 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matinitialise().
subroutine, public distributed_matrix_vector::distributed_matrix_override_set_on | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
type(petscmattype), intent(in) | OVERRIDE_MATRIX, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets the override matrix for a distributed matrix.
distributed_matrix | A pointer to the distributed matrix to override | |
[in] | override_matrix | The override matrix |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2554 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Finishes the creation of a CMISS distributed matrix.
petsc_matrix | A pointer to the distributed PETSc matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2647 of file distributed_matrix_vector.f90.
References comp_environment::computational_environment, distributed_matrix_block_storage_type, distributed_matrix_column_major_storage_type, distributed_matrix_compressed_column_storage_type, distributed_matrix_compressed_row_storage_type, distributed_matrix_diagonal_storage_type, distributed_matrix_petsc_finalise(), distributed_matrix_row_column_storage_type, distributed_matrix_row_major_storage_type, base_routines::enters(), base_routines::exits(), cmisspetsc::petsc_matcreateaij(), cmisspetsc::petsc_matcreatedense(), and cmisspetsc::petsc_matsetoption().
Referenced by distributed_matrix_create_finish().
|
private |
Finalise a PETSc distributed matrix.
petsc_matrix | A pointer to the PETSc distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2768 of file distributed_matrix_vector.f90.
References base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matfinalise().
Referenced by distributed_matrix_finalise(), distributed_matrix_library_type_set(), distributed_matrix_petsc_create_finish(), and distributed_matrix_petsc_initialise().
|
private |
Intialises a PETSc distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2801 of file distributed_matrix_vector.f90.
References distributed_matrix_compressed_row_storage_type, distributed_matrix_petsc_finalise(), distributed_matrix_vector_include_ghosts_type, distributed_matrix_vector_no_ghosts_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matinitialise().
Referenced by distributed_matrix_library_type_set().
subroutine, public distributed_matrix_vector::distributed_matrix_storage_locations_get | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), dimension(:), pointer | ROW_INDICES, | ||
integer(intg), dimension(:), pointer | COLUMN_INDICES, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Gets the storage locations (sparsity pattern) for a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
row_indices | ROW_INDICES(i). On return, the i'th row index of the matrix storage locations | |
column_indices | COLUMN_INDICES(i). On return, the i'th column index of the matrix storage locations | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2870 of file distributed_matrix_vector.f90.
References distributed_matrix_block_storage_type, distributed_matrix_column_major_storage_type, distributed_matrix_compressed_column_storage_type, distributed_matrix_compressed_row_storage_type, distributed_matrix_diagonal_storage_type, distributed_matrix_row_column_storage_type, distributed_matrix_row_major_storage_type, distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_storage_locations_get().
Referenced by equations_set_routines::equations_set_backsubstitute(), solver_matrices_routines::solver_matrix_equations_matrix_add(), solver_matrices_routines::solver_matrix_interface_matrix_add(), solver_matrices_routines::solver_matrix_jacobian_matrix_add(), and solver_matrices_routines::solver_matrix_structure_calculate().
subroutine, public distributed_matrix_vector::distributed_matrix_storage_locations_set | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), dimension(:), intent(in) | ROW_INDICES, | ||
integer(intg), dimension(:), intent(in) | COLUMN_INDICES, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets the storage locations (sparsity pattern) in a distributed matrix to that specified by the row and column indices.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index of the matrix storage locations |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index of the matrix storage locations |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 2945 of file distributed_matrix_vector.f90.
References base_routines::diagnostic_output_type, base_routines::diagnostics3, distributed_matrix_block_storage_type, distributed_matrix_column_major_storage_type, distributed_matrix_compressed_column_storage_type, distributed_matrix_compressed_row_storage_type, distributed_matrix_diagonal_storage_type, distributed_matrix_row_column_storage_type, distributed_matrix_row_major_storage_type, distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_storage_locations_set().
Referenced by equations_matrices_routines::equations_matrices_create_finish(), and solver_matrices_routines::solver_matrices_create_finish().
subroutine, public distributed_matrix_vector::distributed_matrix_storage_type_get | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(out) | STORAGE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Gets the storage type of a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[out] | storage_type | On return, the storage (sparsity) type of the distributed matrix. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3143 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_storage_type_get().
Referenced by equations_set_routines::equations_set_backsubstitute(), solver_matrices_routines::solver_matrix_equations_matrix_add(), solver_matrices_routines::solver_matrix_interface_matrix_add(), solver_matrices_routines::solver_matrix_jacobian_matrix_add(), and solver_matrices_routines::solver_matrix_structure_calculate().
subroutine, public distributed_matrix_vector::distributed_matrix_storage_type_set | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(in) | STORAGE_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the storage type of a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | storage_type | The storage (sparsity) type to set. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3193 of file distributed_matrix_vector.f90.
References distributed_matrix_block_storage_type, distributed_matrix_column_major_storage_type, distributed_matrix_compressed_column_storage_type, distributed_matrix_compressed_row_storage_type, distributed_matrix_diagonal_storage_type, distributed_matrix_row_column_storage_type, distributed_matrix_row_major_storage_type, distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_storage_type_set().
Referenced by equations_matrices_routines::equations_matrices_create_finish(), and solver_matrices_routines::solver_matrices_create_finish().
subroutine, public distributed_matrix_vector::distributed_matrix_update_finish | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Finishes the update procedure for a distributed matrix. This routine will wait until all transfers have completed!
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3262 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matassemblyend().
subroutine, public distributed_matrix_vector::distributed_matrix_update_isfinished | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
logical, intent(out) | ISFINISHED, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Tests to see if a distributed matrix update has finised.
distributed_matrix | A pointer to the distributed matrix | |
[out] | isfinished | On return ISFINISHED will be .TRUE. if the distributed matrix update has finished or .FALSE. if it has not |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3311 of file distributed_matrix_vector.f90.
References base_routines::enters(), and base_routines::exits().
subroutine, public distributed_matrix_vector::distributed_matrix_update_start | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Starts the update procedure for a distributed matrix.
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3376 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matassemblybegin().
subroutine, public distributed_matrix_vector::distributed_matrix_update_waitfinished | ( | type(distributed_matrix_type), pointer | DISTRIBUTED_MATRIX, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Waits until a distributed matrix update has finised.
distributed_matrix | A pointer to the distributed matrix | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3345 of file distributed_matrix_vector.f90.
References base_routines::enters(), and base_routines::exits().
|
private |
Adds values to a distributed double precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to add |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to add |
[in] | values | VALUES(i). The i'th value to add |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3713 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matsetvalues().
|
private |
Adds one value to a distributed double precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to add a value to |
[in] | column_index | The column index to add a value to |
[in] | value | The value to add at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3796 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matsetvalue().
|
private |
Adds a matrix of values to a distributed double precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to add |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to add |
[in] | values | VALUES(i,j). The ij'th value to add |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3859 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matsetvalues().
|
private |
Adds values to a distributed integer matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to add |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to add |
[in] | values | VALUES(i). The i'th value to add |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3425 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Adds one value to a distributed integer matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to add a value to |
[in] | column_index | The column index to add a value to |
[in] | value | The value to add at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3473 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Adds a matrix of values to a distributed integer matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to add |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to add |
[in] | values | VALUES(i,j). The ij'th value to add |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3521 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Adds values to a distributed logical matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to add |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to add |
[in] | values | VALUES(i). The i'th value to add |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3937 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Adds one value to a distributed logical matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to add a value to |
[in] | column_index | The column index to add a value to |
[in] | value | The value to add at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3985 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Adds a matrix of values to a distributed logical matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to add |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to add |
[in] | values | VALUES(i,j). The ij'th value to add |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4033 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Adds values to a distributed single precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to add |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to add |
[in] | values | VALUES(i). The i'th value to add |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3569 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Adds one value to a distributed single precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to add a value to |
[in] | column_index | The column index to add a value to |
[in] | value | The value to add at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3617 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Adds a matrix of values to a distributed single precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to add |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to add |
[in] | values | VALUES(i,j). The ij'th value to add |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 3665 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Gets values in a distributed double precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to get |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to get |
[out] | values | VALUES(i). On return the i'th value to get |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4369 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matgetvalues().
|
private |
Gets one value in a distributed double precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to get a value from |
[in] | column_index | The column index to get a value from |
[out] | value | On return the value of the matrix at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4449 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matgetvalues().
|
private |
Gets a matrix of values in a distributed double precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to get |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to get |
[out] | values | VALUES(i,j). On return the ij'th value to get |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4512 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matgetvalues().
|
private |
Gets values in a distributed integer matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to get |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to get |
[out] | values | VALUES(i). On return the i'th value to get |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4081 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Gets one value in a distributed integer matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to get a value from |
[in] | column_index | The column index to get a value from |
[out] | value | On return the value of the matrix at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4129 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Gets a matrix of values in a distributed integer matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to get |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to get |
[out] | values | VALUES(i,j). On return the ij'th value to get |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4177 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Gets values in a distributed logical matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to get |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to get |
[out] | values | VALUES(i). On return the i'th value to get |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4591 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Gets one value in a distributed logical matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to get a value from |
[in] | column_index | The column index to get a value from |
[out] | value | On return the value of the matrix at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4639 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Gets a matrix of values in a distributed logical matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to get |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to get |
[out] | values | VALUES(i,j). On return the ij'th value to get |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4687 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Gets values in a distributed single precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | The row index to get a value from |
[in] | column_indices | The column index to get a value from |
[out] | values | On return the value of the matrix at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4225 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Gets one value in a distributed single precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to get a value from |
[in] | column_index | The column index to get a value from |
[out] | value | On return the value of the matrix at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4273 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Gets a matrix of values in a distributed single precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to get |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to get |
[out] | values | VALUES(i,j). On return the ij'th value to get |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4321 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets values in a distributed double precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to set |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to set |
[in] | values | VALUES(i). The i'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5023 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matsetvalues().
|
private |
Sets one value in a distributed double precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to set a value to |
[in] | column_index | The column index to set a value to |
[in] | value | The value of the matrix to be set at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5103 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matsetvalues().
|
private |
Sets a matrix of values in a distributed double precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to set |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to set |
[in] | values | VALUES(i,j). The ij'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5161 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_matsetvalues().
|
private |
Sets values in a distributed integer matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to set |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to set |
[in] | values | VALUES(i). The i'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4735 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets one value in a distributed integer matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to set a value to |
[in] | column_index | The column index to set a value to |
[in] | value | The value of the matrix to be set at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4783 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets a matrix of values in a distributed integer matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to set |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to set |
[in] | values | VALUES(i,j). The ij'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4831 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets values in a distributed logical matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to set |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to set |
[in] | values | VALUES(i). The i'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5239 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets one value in a distributed logical matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to set a value to |
[in] | column_index | The column index to set a value to |
[in] | value | The value of the matrix to be set at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5287 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets a matrix of values in a distributed logical matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to set |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to set |
[in] | values | VALUES(i,j). The ij'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5335 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets values in a distributed single precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The i'th row index to set |
[in] | column_indices | COLUMN_INDICES(i). The i'th column index to set |
[in] | values | VALUES(i). The i'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4879 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets one value in a distributed single precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_index | The row index to set a value to |
[in] | column_index | The column index to set a value to |
[in] | value | The value of the matrix to be set at the specified row and column |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4927 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets a matrix of values in a distributed single precision matrix.
distributed_matrix | A pointer to the distributed matrix | |
[in] | row_indices | ROW_INDICES(i). The ij'th row index to set |
[in] | column_indices | COLUMN_INDICES(j). The ij'th column index to set |
[in] | values | VALUES(i,j). The ij'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 4975 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Sets all values in a double precision distributed vector to the specified value.
distributed_vector | A pointer to the distributed vector | |
[in] | value | The value to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5720 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, and cmisspetsc::petsc_vecset().
|
private |
Sets all values in an integer distributed vector to the specified value.
distributed_vector | A pointer to the distributed vector | |
[in] | value | The value to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5616 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_intg_type.
|
private |
Sets all values in a logical distributed_vector to the specified value.
distributed_vector | A pointer to the distributed vector | |
[in] | value | The value to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5780 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_l_type.
|
private |
Sets all values in a single precision distributed vector to the specified value.
distributed_vector | A pointer to the distributed vector | |
[in] | value | The value to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5668 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_sp_type.
|
private |
Finishes the creation of a CMISS distributed vector.
cmiss_vector | A pointer to the distributed CMISS vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6283 of file distributed_matrix_vector.f90.
References comp_environment::computational_node_number_get(), distributed_data_id, distributed_matrix_vector_dp_type, distributed_matrix_vector_include_ghosts_type, distributed_matrix_vector_intg_type, distributed_matrix_vector_l_type, distributed_matrix_vector_sp_type, distributed_vector_cmiss_finalise(), distributedvector_cmisstransferinitialise(), base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, matrix_vector::matrix_vector_intg_type, matrix_vector::matrix_vector_l_type, and matrix_vector::matrix_vector_sp_type.
Referenced by distributed_vector_create_finish().
|
private |
Finalise a CMISS distributed vector.
cmiss_vector | A pointer to the CMISS distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6192 of file distributed_matrix_vector.f90.
References distributed_vector_cmiss_transfer_finalise(), base_routines::enters(), and base_routines::exits().
Referenced by distributed_vector_cmiss_create_finish(), distributed_vector_cmiss_initialise(), distributed_vector_finalise(), and distributed_vector_library_type_set().
|
private |
Intialises a CMISS distributed vector.
distributed_vector | A pointer to the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6228 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_include_ghosts_type, distributed_matrix_vector_no_ghosts_type, distributed_vector_cmiss_finalise(), base_routines::enters(), and base_routines::exits().
Referenced by distributed_vector_initialise(), and distributed_vector_library_type_set().
|
private |
Finalises a CMISS distributed vector transfer information and deallocates all memory.
cmiss_vector | A pointer to the CMISS distributed vector | |
[in] | domain_idx | The domain index of the distributed vector to finalise |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7620 of file distributed_matrix_vector.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by distributed_vector_cmiss_finalise().
|
private |
Copies alpha times a double precision distributed vector to another distributed vector.
from_vector | A pointer to the distributed vector to copy from | |
to_vector | A pointer to the distributed vector to copy to | |
[in] | alpha | The multiplicative factor for the copy. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5916 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_dp_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), cmisspetsc::petsc_veccopy(), and cmisspetsc::petsc_vecscale().
|
private |
Copies alpha times an integer distributed vector to another distributed vector.
from_vector | A pointer to the distributed vector to copy from | |
to_vector | A pointer to the distributed vector to copy to | |
[in] | alpha | The multiplicative factor for the copy. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 5832 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_intg_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Copies alpha times a logical distributed vector to another distributed vector.
from_vector | A pointer to the distributed vector to copy from | |
to_vector | A pointer to the distributed vector to copy to | |
[in] | alpha | The multiplicative factor for the copy. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6108 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_l_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Copies alpha times a single precision distributed vector to another distributed vector.
from_vector | A pointer to the distributed vector to copy from | |
to_vector | A pointer to the distributed vector to copy to | |
[in] | alpha | The multiplicative factor for the copy. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6024 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, distributed_matrix_vector_sp_type, base_routines::enters(), and base_routines::exits().
subroutine, public distributed_matrix_vector::distributed_vector_create_finish | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Finishes the creation a distributed vector.
distributed_vector | A pointer to the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6424 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, distributed_vector_cmiss_create_finish(), distributed_vector_finalise(), distributed_vector_petsc_create_finish(), base_routines::enters(), and base_routines::exits().
Referenced by distributed_vector_duplicate(), equations_matrices_routines::equations_matrices_create_finish(), solver_routines::solver_dynamic_create_finish(), and solver_matrices_routines::solver_matrices_create_finish().
subroutine, public distributed_matrix_vector::distributed_vector_create_start | ( | type(domain_mapping_type), pointer | DOMAIN_MAPPING, |
type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Starts the creation a distributed vector.
domain_mapping | A pointer to the domain mapping used to distribute this vector | |
distributed_vector | On return, a pointer to the created distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6475 of file distributed_matrix_vector.f90.
References distributed_vector_finalise(), distributed_vector_initialise(), base_routines::enters(), and base_routines::exits().
Referenced by distributed_vector_duplicate(), equations_matrices_routines::equations_matrices_create_finish(), solver_routines::solver_dynamic_create_finish(), and solver_matrices_routines::solver_matrices_create_finish().
|
private |
Returns a pointer to the data of a double precision distributed vector. Note: the values can be used for read operations but a DISTRIBUTED_VECTOR_VALUES_SET call must be used to change any values. The pointer should not be deallocated.
distributed_vector | A pointer to the distributed vector | |
data | On return, a pointer to the data of the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6860 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, and cmisspetsc::petsc_vecgetarrayreadf90().
|
private |
Returns a pointer to the data of an integer distributed vector. Note: the values can be used for read operations but a DISTRIBUTED_VECTOR_VALUES_SET call must be used to change any values. The pointer should not be deallocated.
distributed_vector | A pointer to the distributed vector | |
data | On return, a pointer to the data of the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6744 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_intg_type.
|
private |
Returns a pointer to the data of a logical distributed vector. Note: the values can be used for read operations but a DISTRIBUTED_VECTOR_VALUES_SET call must be used to change any values. The pointer should not be deallocated.
distributed_vector | A pointer to the distributed vector | |
data | On return, a pointer to the data of the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6926 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_l_type.
|
private |
Returns a pointer to the data of a single precision distributed vector. Note: the values can be used for read operations but a DISTRIBUTED_VECTOR_VALUES_SET call must be used to change any values. The pointer should not be deallocated.
distributed_vector | A pointer to the distributed vector | |
data | On return, a pointer to the data of the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6802 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_sp_type.
|
private |
Restores the double precision data pointer returned from DISTRIBUTED_VECTOR_DATA_GET once the data has finished being used.
distributed_vector | A pointer to the distributed vector | |
data | A pointer to the distributed vector data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7075 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_vecrestorearrayreadf90().
|
private |
Restores the integer data pointer returned from DISTRIBUTED_VECTOR_DATA_GET once the data has finished being used.
distributed_vector | A pointer to the distributed vector | |
data | The a pointer to the distributed vector data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6983 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Restores the logical data pointer returned from DISTRIBUTED_VECTOR_DATA_GET once the data has finished being used.
distributed_vector | A pointer to the distributed vector | |
data | A pointer to the distributed vector data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7129 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Restores the single precision data pointer returned from DISTRIBUTED_VECTOR_DATA_GET once the data has finished being used.
distributed_vector | A pointer to the distributed vector | |
data | A pointer to the distributed vector data for this computational node | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7029 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
subroutine, public distributed_matrix_vector::distributed_vector_data_type_set | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
integer(intg), intent(in) | DATA_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the data type of a distributed vector.
distributed_vector | A pointer to the distributed vector | |
[in] | data_type | The data type to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6542 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, matrix_vector::matrix_vector_intg_type, matrix_vector::matrix_vector_l_type, and matrix_vector::matrix_vector_sp_type.
Referenced by distributed_vector_duplicate(), equations_matrices_routines::equations_matrices_create_finish(), solver_routines::solver_dynamic_create_finish(), and solver_matrices_routines::solver_matrices_create_finish().
subroutine, public distributed_matrix_vector::distributed_vector_destroy | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Destroys a distributed vector.
distributed_vector | A pointer to the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6608 of file distributed_matrix_vector.f90.
References distributed_vector_finalise(), base_routines::enters(), and base_routines::exits().
Referenced by equations_matrices_routines::equations_matrices_dynamic_finalise(), equations_matrices_routines::equations_matrices_nonlinear_finalise(), equations_matrices_routines::equations_matrices_rhs_finalise(), equations_matrices_routines::equations_matrices_source_finalise(), equations_matrices_routines::equations_matrix_finalise(), solver_matrices_routines::solver_matrices_finalise(), and solver_matrices_routines::solver_matrix_finalise().
subroutine, public distributed_matrix_vector::distributed_vector_duplicate | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
type(distributed_vector_type), pointer | NEW_DISTRIBUTED_VECTOR, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Duplicates the structure of a distributed vector and returns a pointer to the new distributed vector in NEW_DISTRIBUTED_VECTOR.
distributed_vector | A pointer to the distributed vector to duplicate | |
new_distributed_vector | On return a pointer to the new duplicated distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6635 of file distributed_matrix_vector.f90.
References distributed_vector_create_finish(), distributed_vector_create_start(), distributed_vector_data_type_set(), distributed_vector_finalise(), distributed_vector_library_type_set(), base_routines::enters(), and base_routines::exits().
|
private |
Finalises a distributed vector and deallocates all memory.
distributed_vector | A pointer to the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6673 of file distributed_matrix_vector.f90.
References distributed_vector_cmiss_finalise(), distributed_vector_petsc_finalise(), base_routines::enters(), and base_routines::exits().
Referenced by distributed_vector_create_finish(), distributed_vector_create_start(), distributed_vector_destroy(), distributed_vector_duplicate(), and distributed_vector_initialise().
subroutine, public distributed_matrix_vector::distributed_vector_ghosting_type_set | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
integer(intg), intent(in) | GHOSTING_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the ghosting type for a distributed vector.
distributed_vector | A pointer to the distributed vector | |
[in] | ghosting_type | The ghosting type |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7175 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_include_ghosts_type, distributed_matrix_vector_no_ghosts_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Initialises a distributed vector.
domain_mapping | A pointer to the domain mapping used to distribute this vector | |
distributed_vector | A pointer to the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6700 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_include_ghosts_type, distributed_vector_cmiss_initialise(), distributed_vector_finalise(), base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_dp_type.
Referenced by distributed_vector_create_start().
subroutine, public distributed_matrix_vector::distributed_vector_library_type_set | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
integer(intg), intent(in) | LIBRARY_TYPE, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets/changes the library type for a distributed vector.
distributed_vector | A pointer to the distributed vector | |
[in] | library_type | The library type |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7246 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, distributed_vector_cmiss_finalise(), distributed_vector_cmiss_initialise(), distributed_vector_petsc_finalise(), distributed_vector_petsc_initialise(), base_routines::enters(), and base_routines::exits().
Referenced by distributed_vector_duplicate(), and solver_matrices_routines::solver_matrices_create_finish().
subroutine, public distributed_matrix_vector::distributed_vector_output | ( | integer(intg), intent(in) | ID, |
type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Outputs a distributed vector to the specified output ID.
[in] | id | The ID of the output stream |
distributed_vector | A pointer to the distributed vector to duplicate | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7311 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, matrix_vector::matrix_vector_intg_type, matrix_vector::matrix_vector_l_type, matrix_vector::matrix_vector_sp_type, cmisspetsc::petsc_vecgetarrayreadf90(), and cmisspetsc::petsc_vecrestorearrayreadf90().
Referenced by equations_matrices_routines::equations_matrices_output(), and solver_matrices_routines::solver_matrices_output().
subroutine, public distributed_matrix_vector::distributed_vector_override_set_off | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Turns off the override vector for a distributed vector.
distributed_vector | A pointer to the distributed vector to override | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7438 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_vecinitialise().
subroutine, public distributed_matrix_vector::distributed_vector_override_set_on | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
type(petscvectype), intent(in) | OVERRIDE_VECTOR, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Sets the override vector for a distributed vector.
distributed_vector | A pointer to the distributed vector to override | |
[in] | override_vector | The override vector |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7391 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Finishes the creation of a PETSc distributed vector.
petsc_vector | A pointer to the distributed PETSc vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7484 of file distributed_matrix_vector.f90.
References comp_environment::computational_environment, distributed_vector_petsc_finalise(), base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_veccreatempi().
Referenced by distributed_vector_create_finish().
|
private |
Finalise a PETSc distributed vector.
petsc_vector | A pointer to the PETSc distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7533 of file distributed_matrix_vector.f90.
References base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_vecfinalise().
Referenced by distributed_vector_finalise(), distributed_vector_library_type_set(), distributed_vector_petsc_create_finish(), and distributed_vector_petsc_initialise().
|
private |
Intialises a PETSc distributed vector.
distributed_vector | A pointer to the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7561 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_include_ghosts_type, distributed_matrix_vector_no_ghosts_type, distributed_matrix_vector_petsc_type, distributed_vector_petsc_finalise(), base_routines::enters(), base_routines::exits(), and cmisspetsc::petsc_vecinitialise().
Referenced by distributed_vector_library_type_set().
subroutine, public distributed_matrix_vector::distributed_vector_update_finish | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Finishes the (ghost) update procedure for a distributed vector. This routine will wait until all transfers have completed!
distributed_vector | A pointer to the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7725 of file distributed_matrix_vector.f90.
References comp_environment::computational_nodes_number_get(), base_routines::diagnostic_output_type, base_routines::diagnostics1, distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, distributed_vector_update_waitfinished(), base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, matrix_vector::matrix_vector_intg_type, matrix_vector::matrix_vector_l_type, matrix_vector::matrix_vector_sp_type, and cmisspetsc::petsc_vecassemblyend().
subroutine, public distributed_matrix_vector::distributed_vector_update_isfinished | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
logical, intent(out) | ISFINISHED, | ||
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Tests to see if a distributed vector update has finised!
distributed_vector | A pointer to the distributed vector | |
[out] | isfinished | On return, is .TRUE. if all the transfer operations for the distributed vector have completed, .FALSE. if not |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7870 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmiss_mpi::mpi_error_check().
subroutine, public distributed_matrix_vector::distributed_vector_update_start | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Starts the (ghost) update procedure for a distributed vector.
distributed_vector | A pointer to the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7986 of file distributed_matrix_vector.f90.
References comp_environment::computational_environment, comp_environment::computational_nodes_number_get(), base_routines::diagnostic_output_type, base_routines::diagnostics1, base_routines::diagnostics5, distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, matrix_vector::matrix_vector_intg_type, matrix_vector::matrix_vector_l_type, matrix_vector::matrix_vector_sp_type, cmiss_mpi::mpi_error_check(), and cmisspetsc::petsc_vecassemblybegin().
subroutine, public distributed_matrix_vector::distributed_vector_update_waitfinished | ( | type(distributed_vector_type), pointer | DISTRIBUTED_VECTOR, |
integer(intg), intent(out) | ERR, | ||
type(varying_string), intent(out) | ERROR | ||
) |
Waits until a distributed vector update has finised.
distributed_vector | A pointer to the distributed vector | |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7931 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and cmiss_mpi::mpi_error_check().
Referenced by distributed_vector_update_finish().
|
private |
Adds values to a distributed double precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be added |
[in] | values | VALUES(i). The i'th value to added |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8865 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, and cmisspetsc::petsc_vecsetvalues().
|
private |
Adds one value to a distributed double precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be added |
[in] | value | The value to be added |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8946 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, and cmisspetsc::petsc_vecsetvalues().
|
private |
Adds values to a distributed integer vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to add |
[in] | values | VALUES(i). The i'th value to add |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8599 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_intg_type.
|
private |
Adds one value to a distributed integer vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be added at |
[in] | value | The value to be added |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8670 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_intg_type.
|
private |
Adds values to a distributed logical vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be added |
[in] | values | VALUES(i). The i'th value to added |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9020 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_l_type.
|
private |
Adds one value to a distributed logical vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be added |
[in] | value | The value to be added |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9091 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_l_type.
|
private |
Adds values to a distributed single precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be added |
[in] | values | VALUES(i). The i'th value to add |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8732 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_sp_type.
|
private |
Adds one value to a distributed single precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be added |
[in] | value | The value to be added |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8803 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_sp_type.
|
private |
Gets values in a distributed double precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be get |
[out] | values | VALUES(i). On return, the value at the i'th specified index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9416 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, and cmisspetsc::petsc_vecgetvalues().
|
private |
Gets one value in a distributed double precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be get |
[out] | value | On return, the value at the specified index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9498 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, and cmisspetsc::petsc_vecgetvalues().
|
private |
Gets values in a distributed integer vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be get |
[out] | values | VALUES(i). On return, the value at the i'th specified index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9153 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_intg_type.
|
private |
Gets one value in a distributed integer vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be get |
[out] | value | On return, the value at the specified index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9224 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_intg_type.
|
private |
Gets values in a distributed logical vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be get |
[out] | values | VALUES(i). On return, the value in the i'th specified index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9571 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_l_type.
|
private |
Gets one value in a distributed logical vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be get |
[out] | value | On return, the value in the specified index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9641 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_l_type.
|
private |
Gets values in a distributed single precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be get |
[out] | values | VALUES(i). On return, the value at the i'th specified index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9285 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_sp_type.
|
private |
Gets one value in a distributed single precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be get |
[out] | value | On return, the value at the specified index |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9355 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_sp_type.
|
private |
Sets values in a distributed double precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be set |
[in] | values | VALUES(i). The i'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9968 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, and cmisspetsc::petsc_vecsetvalues().
|
private |
Sets one value in a distributed double precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be set |
[in] | value | The value to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10049 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, and cmisspetsc::petsc_vecsetvalues().
|
private |
Sets values in a distributed integer vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be set |
[in] | values | VALUES(i). The i'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9702 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_intg_type.
|
private |
Sets one value in a distributed integer vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be set |
[in] | value | The value to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9773 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_intg_type.
|
private |
Sets values in a distributed logical vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be set |
[in] | values | VALUES(i). The i'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10125 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_l_type.
|
private |
Sets one value in a distributed logical vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be set |
[in] | value | The value to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 10196 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_l_type.
|
private |
Sets values in a distributed single precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | indices | INDICES(i). The i'th index to be set |
[in] | values | VALUES(i). The i'th value to set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9835 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_sp_type.
|
private |
Sets one value in a distributed single precision vector.
distributed_vector | A pointer to the distributed vector | |
[in] | index | The index to be set |
[in] | value | The value to be set |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 9906 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_sp_type.
subroutine, public distributed_matrix_vector::distributedmatrix_datatypeget | ( | type(distributed_matrix_type), pointer | matrix, |
integer(intg), intent(out) | dataType, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Gets the data type of a distributed matrix.
matrix | A pointer to the distributed matrix | |
[out] | datatype | On return, the data type of the matrix. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1656 of file distributed_matrix_vector.f90.
References base_routines::enters(), and base_routines::exits().
subroutine, public distributed_matrix_vector::distributedmatrix_dimensionsget | ( | type(distributed_matrix_type), pointer | distributedMatrix, |
integer(intg), intent(out) | m, | ||
integer(intg), intent(out) | n, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Gets the dimensions of a matrix on this computational node.
distributedmatrix | A pointer to the distributed matrix to get dimensions for | |
[out] | m | On return, the number of rows in the matrix for this domain |
[out] | n | On return, the number of columns in the matrix for this domain |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 1746 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), and base_routines::exits().
|
private |
Initialises a CMISS distributed vector transfer information.
cmiss_vector | A pointer to the CMISS distributed vector | |
[in] | domain_idx | The domain index to initialise |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 7678 of file distributed_matrix_vector.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by distributed_vector_cmiss_create_finish().
subroutine, public distributed_matrix_vector::distributedvector_datatypeget | ( | type(distributed_vector_type), pointer | vector, |
integer(intg), intent(out) | dataType, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Gets the data type of a distributed vector.
vector | A pointer to the distributed vector | |
[out] | datatype | On return, the data type of the vector. |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 6511 of file distributed_matrix_vector.f90.
References base_routines::enters(), and base_routines::exits().
Referenced by distributedvector_vecdotdp(), distributedvector_vecdotintg(), and distributedvector_vecdotsp().
subroutine, public distributed_matrix_vector::distributedvector_l2norm | ( | type(distributed_vector_type), intent(in), pointer | distributedVector, |
real(dp), intent(out) | norm, | ||
integer(intg), intent(out) | err, | ||
type(varying_string), intent(out) | error | ||
) |
Calculates the L2 norm of a distributed vector values on this computational node.
[in] | distributedvector | A pointer to the distributed vector |
[out] | norm | The L2 norm of values from this computational node |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8322 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, matrix_vector::matrix_vector_intg_type, matrix_vector::matrix_vector_l_type, and matrix_vector::matrix_vector_sp_type.
Referenced by equations_set_routines::equationsset_finiteelementjacobianevaluatefd().
|
private |
Calculates the dot product of 2 distributed double-precision vectors on this computational node.
[in] | distributedvectora | A pointer to the distributed vector A |
[in] | distributedvectorb | A pointer to the distributed vector B |
[out] | dotproduct | The dot product on this computational node |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8525 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, distributedvector_datatypeget(), base_routines::enters(), base_routines::exits(), matrix_vector::matrix_vector_dp_type, and cmisspetsc::petsc_vecdot().
|
private |
Calculates the dot product of 2 distributed integer vectors on this computational node.
[in] | distributedvectora | A pointer to the distributed vector A |
[in] | distributedvectorb | A pointer to the distributed vector B |
[out] | dotproduct | The dot product on this computational node |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8387 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, distributedvector_datatypeget(), base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_intg_type.
|
private |
Calculates the dot product of 2 distributed single-precision vectors on this computational node.
[in] | distributedvectora | A pointer to the distributed vector A |
[in] | distributedvectorb | A pointer to the distributed vector B |
[out] | dotproduct | The dot product on this computational node |
[out] | err | The error code |
[out] | error | The error string |
Definition at line 8456 of file distributed_matrix_vector.f90.
References distributed_matrix_vector_cmiss_type, distributed_matrix_vector_petsc_type, distributedvector_datatypeget(), base_routines::enters(), base_routines::exits(), and matrix_vector::matrix_vector_sp_type.
|
private |
Definition at line 118 of file distributed_matrix_vector.f90.
Referenced by distributed_matrix_cmiss_create_finish(), and distributed_vector_cmiss_create_finish().