class SimplicialComplex::Complex
Public Class Methods
new()
click to toggle source
# File lib/simplicial_complex/complex.rb, line 3 def initialize @simplices = Array.new end
Public Instance Methods
add_simplex(simplex)
click to toggle source
Adds a simplex to the complex
# File lib/simplicial_complex/complex.rb, line 8 def add_simplex(simplex) (0..simplex.dim).each do |d| simplex.faces(d).each do |face| @simplices << face unless @simplices.include?(face) end end end
betti(dim)
click to toggle source
Computes the dim-Betti of the complex
# File lib/simplicial_complex/complex.rb, line 47 def betti(dim) end
dim()
click to toggle source
Computes the dimension of the complex
# File lib/simplicial_complex/complex.rb, line 22 def dim @simplices.map {|simplex| simplex.dim}.max end
remove_simplex(simplex)
click to toggle source
Removes a simplex from the complex
# File lib/simplicial_complex/complex.rb, line 17 def remove_simplex(simplex) @simplices.delete(simplex) end
simplices(dim)
click to toggle source
Computes the simplices of certain dimension
# File lib/simplicial_complex/complex.rb, line 27 def simplices(dim) simplices = Array.new @simplices.each do |simplex| simplices << simplex if simplex.dim == dim end simplices end
star(vertex)
click to toggle source
Outputs the star of a vertex
# File lib/simplicial_complex/complex.rb, line 42 def star(vertex) end
to_json(*args)
click to toggle source
# File lib/simplicial_complex/complex.rb, line 51 def to_json(*args) {dim: dim, simplices: @simplices}.to_json(*args) end
vertices()
click to toggle source
Outputs the vertices
# File lib/simplicial_complex/complex.rb, line 37 def vertices simplices(0).map {|simplex| simplex.vertices[0]} end