List Generic Operations
Basic operations
Module
Functions
Arithmetic
Module
UTCGP.listnumber_arithmetic — Module
Vector to Vector arithmetic or Vector to Number arithmetic by broadcasting.
Exports : bundle_listnumber_arithmetic:
sum_broadcastsubtract_broadcastmult_broadcastdiv_broadcastsum_vectorsubtract_vectormult_vectordiv_vector
Functions
Broadcast
UTCGP.listnumber_arithmetic.sum_broadcast — Function
sum_broadcast(v::Vector{<:Number}, n::Number, args...)Sum every element in the vector v with n
julia> sum_broadcast([1,2,3],10)
3-element Vector{Int64}:
11
12
13UTCGP.listnumber_arithmetic.subtract_broadcast — Function
subtract_broadcast(v::Vector{<:Number}, n::Number, args...)Substract n from every element in v
julia> subtract_broadcast([1,2,3],10)
3-element Vector{Int64}:
-9
-8
-7UTCGP.listnumber_arithmetic.mult_broadcast — Function
mult_broadcast(v::Vector{<:Number}, n::Number, args...)Multiply n by every element in v
julia> mult_broadcast([1,2,3],10)
3-element Vector{Int64}:
10
20
30UTCGP.listnumber_arithmetic.div_broadcast — Function
div_broadcast(v::Vector{<:Number}, n::Number, args...)Divides every element in v by n.
If n == 0 it throws DivideError instead of allowing Inf.
julia> div_broadcast([1,2,3],10)
3-element Vector{Float64}:
0.1
0.2
0.3julia> div_broadcast([1,2,3],0)
ERROR: DivideError: integer division error
[...]Vector
UTCGP.listnumber_arithmetic.sum_vector — Function
sum_vector(v1::Vector{<:Number}, v2::Vector{<:Number}, args...)Element wise sum between v1 and v2.
Can throw DimensionMismatch.
julia> sum_vector([1,2,3],[-1,-2,-3])
3-element Vector{Int64}:
0
0
0julia> sum_vector([1,2,3],[-1,-2])
ERROR: DimensionMismatch: a has size (3,), b has size (2,), mismatch at dim 1
[...]UTCGP.listnumber_arithmetic.subtract_vector — Function
subtract_vector(v1::Vector{<:Number}, v2::Vector{<:Number}, args...)Element wise substraction between v1 and v2
Can throw DimensionMismatch.
julia> subtract_vector([1,2,3],[1,2,3])
3-element Vector{Int64}:
0
0
0UTCGP.listnumber_arithmetic.mult_vector — Function
mult_vector(v1::Vector{<:Number}, v2::Vector{<:Number}, args...)Element wise multiplication between v1 and v2.
Can throw DimensionMismatch.
julia> mult_vector([1.,2.,3.],[1,2,3])
3-element Vector{Float64}:
1.0
4.0
9.0UTCGP.listnumber_arithmetic.div_vector — Function
div_vector(v1::Vector{<:Number}, v2::Vector{<:Number}, args...)Element wise division between v1 and v2.
A division always return a float, even if the two elements are integers.
If one element in v2 is 0, it will throw DivideError.
Can throw DimensionMismatch.
julia> div_vector([1,2,3],[10,10,10])
3-element Vector{Float64}:
0.1
0.2
0.3julia> div_vector([1,2,3],[10,10,0])
ERROR: DivideError: integer division error
[...]Algebraic
Module
UTCGP.listnumber_algebraic — Module
Algebraic operations on a vector
Exports : bundle_listnumber_algebraic:
abs_vector
Functions
UTCGP.listnumber_algebraic.abs_vector — Function
abs_vector(v::Vector{<:Number}, args...)Element wise Abs value
julia> abs_vector([-1,2,3])
3-element Vector{Int64}:
1
2
3Recursive functions
Module
UTCGP.listnumber_recursive — Module
Recursive functions
Exports :
- bundle_listnumber_recursive :
recsumrecmultrange_
Functions
UTCGP.listnumber_recursive.recsum — Function
recsum(from::Vector{<:Number}, args...)Returns the recursive sum of the elements in the vector.
The size of the return is the same as the size of the input.
julia> recsum([1,2,3])
3-element Vector{Int64}:
1
3
6julia> recsum([1.,2.,3.])
3-element Vector{Float64}:
1.0
3.0
6.0UTCGP.listnumber_recursive.recmult — Function
recmult(init_number::Number, mult_by::Number, n_times::Int, args...)Multiplies recursively the init_number by mult_by n_times.
Returns the vector holding all the results. The first entry of the vector is returned as is.
julia> recmult(2,0.5,3)
4-element Vector{Real}:
2
1.0
0.5
0.25UTCGP.listnumber_recursive.range_ — Function
range_(max_n::Number)Returns the range between 1 (inclusive) and max_n (inclusive).
julia> range_(3)
3-element Vector{Int64}:
1
2
3julia> range_(3.0)
3-element Vector{Float64}:
1.0
2.0
3.0