mirror of
				https://github.com/avitex/elixir-glicko
				synced 2025-11-04 07:33:27 +00:00 
			
		
		
		
	credo
This commit is contained in:
		
							parent
							
								
									c96d357812
								
							
						
					
					
						commit
						7d46daf078
					
				@ -75,7 +75,8 @@ defmodule Glicko do
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	# Calculation of the estimated variance of the player's rating based on game outcomes
 | 
						# Calculation of the estimated variance of the player's rating based on game outcomes
 | 
				
			||||||
	defp calc_variance_estimate(%{player: player, results: results}) do
 | 
						defp calc_variance_estimate(%{player: player, results: results}) do
 | 
				
			||||||
		Enum.reduce(results, 0.0, fn result, acc ->
 | 
							results
 | 
				
			||||||
 | 
							|> Enum.reduce(0.0, fn result, acc ->
 | 
				
			||||||
			tmp_e = calc_e(player, result)
 | 
								tmp_e = calc_e(player, result)
 | 
				
			||||||
			acc + :math.pow(result.opponent_rating_deviation_g, 2) * tmp_e * (1 - tmp_e)
 | 
								acc + :math.pow(result.opponent_rating_deviation_g, 2) * tmp_e * (1 - tmp_e)
 | 
				
			||||||
		end)
 | 
							end)
 | 
				
			||||||
@ -98,7 +99,7 @@ defmodule Glicko do
 | 
				
			|||||||
	end
 | 
						end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	defp calc_new_player_volatility(%{a: a}) do
 | 
						defp calc_new_player_volatility(%{a: a}) do
 | 
				
			||||||
		:math.exp(a/2)
 | 
							:math.exp(a / 2)
 | 
				
			||||||
	end
 | 
						end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	defp calc_results_effect(%{player: player, results: results}) do
 | 
						defp calc_results_effect(%{player: player, results: results}) do
 | 
				
			||||||
@ -112,7 +113,7 @@ defmodule Glicko do
 | 
				
			|||||||
	end
 | 
						end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	defp calc_new_player_rating_deviation(ctx) do
 | 
						defp calc_new_player_rating_deviation(ctx) do
 | 
				
			||||||
		1/:math.sqrt(1/:math.pow(ctx.prerating_period, 2) + 1/ctx.variance_estimate)
 | 
							1 / :math.sqrt(1 / :math.pow(ctx.prerating_period, 2) + 1 / ctx.variance_estimate)
 | 
				
			||||||
	end
 | 
						end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	defp calc_prerating_period(ctx) do
 | 
						defp calc_prerating_period(ctx) do
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user