expand_vector Interface

public interface expand_vector

Calls

interface~~expand_vector~~CallsGraph interface~expand_vector expand_vector proc~expand_vector_int expand_vector_int interface~expand_vector->proc~expand_vector_int proc~expand_vector_real expand_vector_real interface~expand_vector->proc~expand_vector_real

Called by

interface~~expand_vector~~CalledByGraph interface~expand_vector expand_vector proc~compute_sparsity_random compute_sparsity_random proc~compute_sparsity_random->interface~expand_vector proc~resize_sparsity_vectors numdiff_type%resize_sparsity_vectors proc~compute_sparsity_random->proc~resize_sparsity_vectors proc~compute_sparsity_random_2 compute_sparsity_random_2 proc~compute_sparsity_random_2->interface~expand_vector proc~compute_sparsity_random_2->proc~resize_sparsity_vectors proc~divide_interval divide_interval proc~compute_sparsity_random_2->proc~divide_interval proc~compute_jacobian_for_sparsity numdiff_type%compute_jacobian_for_sparsity proc~compute_sparsity_random_2->proc~compute_jacobian_for_sparsity proc~resize_sparsity_vectors->interface~expand_vector proc~unique_int unique_int proc~unique_int->interface~expand_vector proc~unique_real unique_real proc~unique_real->interface~expand_vector interface~unique unique interface~unique->proc~unique_int interface~unique->proc~unique_real proc~compute_nominal_function numdiff_type%compute_nominal_function proc~compute_nominal_function->interface~unique proc~divide_interval->interface~unique proc~initialize_numdiff numdiff_type%initialize_numdiff proc~initialize_numdiff->interface~unique proc~put_in_cache function_cache%put_in_cache proc~put_in_cache->interface~unique proc~compute_function_with_cache compute_function_with_cache proc~compute_function_with_cache->proc~put_in_cache proc~perturb_x_and_compute_f numdiff_type%perturb_x_and_compute_f proc~perturb_x_and_compute_f->proc~compute_nominal_function proc~perturb_x_and_compute_f_partitioned numdiff_type%perturb_x_and_compute_f_partitioned proc~perturb_x_and_compute_f_partitioned->proc~compute_nominal_function proc~compute_jacobian_for_sparsity->proc~perturb_x_and_compute_f proc~compute_jacobian_partitioned compute_jacobian_partitioned proc~compute_jacobian_partitioned->proc~perturb_x_and_compute_f_partitioned proc~compute_jacobian_standard compute_jacobian_standard proc~compute_jacobian_standard->proc~perturb_x_and_compute_f

Module Procedures

private pure subroutine expand_vector_int(vec, n, chunk_size, val, finished)

Add elements to the integer vector in chunks.

Arguments

Type IntentOptional Attributes Name
integer, intent(inout), dimension(:), allocatable :: vec
integer, intent(inout) :: n

counter for last element added to vec. must be initialized to size(vec) (or 0 if not allocated) before first call

integer, intent(in) :: chunk_size

allocate vec in blocks of this size (values <1 are treated as 1)

integer, intent(in), optional :: val

the value to add to vec

logical, intent(in), optional :: finished

set to true to return vec as its correct size (n)

private pure subroutine expand_vector_real(vec, n, chunk_size, val, finished)

Add elements to the real vector in chunks.

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(inout), dimension(:), allocatable :: vec
integer, intent(inout) :: n

counter for last element added to vec. must be initialized to size(vec) (or 0 if not allocated) before first call

integer, intent(in) :: chunk_size

allocate vec in blocks of this size (values <1 are treated as 1)

real(kind=wp), intent(in), optional :: val

the value to add to vec

logical, intent(in), optional :: finished

set to true to return vec as its correct size (n)