extends Object class_name ParamterList var parameters: Dictionary[String,float] = {} func numberOfParameters() -> int: return parameters.size() func get_Parameters() -> Dictionary[String,float]: return parameters func addParameter(name: String, value: float) -> void: if parameters.has(name): parameters[name] += value else: parameters[name] = value func calculateParameterDistance(a:Dictionary[String,float],b:Dictionary[String,float]) -> float: var total: Dictionary[String,float] = a.duplicate() total.merge(b) ##total contains all keys var c: Dictionary[String,float] ##c will be used to calculate the distance var lengthC: float = 0 ##Return value ##For each param in total either subtract or add if only one has param for param in total: if b.has(param) and a.has(param): c[param] = a[param] - b[param] else: c[param] = total[param] ##Add together all values for param in c: lengthC += pow(c[param],2) ## Squareroot to get length of n-Dimensional Vector made up of all entries of c (a - b = c) lengthC = sqrt(lengthC) return lengthC