becas

package
v0.0.0-...-1916a8b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 2, 2014 License: BSD-2-Clause Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Rmax es la renta máxima por persona (elegimos una familia típica de 4
	// personas). Este es el umbral 2 de la tabla de becas. Por encima de este
	// umbral los estudiantes no reciben parte variable.
	Rmax float64 = 36421.0 / 4.0

	// Rmin es la renta mínima, un valor cercano al umbral de pobreza, lo minimo
	// necesario para vivir dignamente.
	Rmin float64 = 6000.0

	// Rmed es la renta media por persona. Usamos la estadística de 2011
	// http://www.ine.es/jaxi/tabla.do?type=pcaxis&path=/t25/p453/provi/l0/&file=01001.px
	Rmed float64 = 9326.0

	// Ce es el coste de los estudios. Se toma un valor fijo indicativo.
	Ce float64 = 3600.0

	// C es la dotación presupuestaria para la parte variable de becas, por persona
	Cp float64 = 2300.0

	// Nmed es la nota media de todos los estudiantes. Junto con la desviación
	// típica se usa para crear una distribución normal de notas.
	Nmed float64 = 6.0

	// Sd es la desviación típica de las notas de los estudiantes.
	Sd float64 = 2.0

	// N es la cantidad de estudiantes que queremos modelar.
	N int = 1000
)

Variables

This section is empty.

Functions

func AlgoritmoDelPantano

func AlgoritmoDelPantano(C float64, H []Estudiante)

AlgoritmoDelPantano reparte C entre H de forma que el coeficiente Gini sea mínimo.

func AlgoritmoEmpujar

func AlgoritmoEmpujar(C float64, H []Estudiante)

func AlgoritmoOficial

func AlgoritmoOficial(C float64, H []Estudiante) int

AlgoritmoOficial reparte C entre H según la fórmula oficial de las becas para el curso 2013-2014, con alguna simplificación: no tiene en cuenta las notas, y Rmax es fijo.

func AlgoritmoOficialConNotas

func AlgoritmoOficialConNotas(C float64, H []Estudiante)

AlgoritmoOficialConNotas es una simulación de la realimentación que las notas pueden tener sobre la renta de los estudiantes.

Se asigna la beca en función de la renta y de las notas. Aquellos estudiantes con notas bajas pueden no recibir beca y no tener la oportunidad de seguir estudiando, con lo que se genera un circulo vicioso.

func Cobertura

func Cobertura(H []Estudiante, lev float64) (float64, float64)

func Corr

func Corr(H []Estudiante) (float64, error)

Corr devuelve el coeficiente de correlación Pearson entre becas y notas

func Datos

func Datos(H []Estudiante) (float64, float64, float64)

Return Gini, Cobertura y Pearson

func Evolucion

func Evolucion()

func EvolucionRenta

func EvolucionRenta(H []Estudiante)

Nueva renta = renta anterior -10% con nota 0 +10% con 10, más un factor aleatorio de 10%

func Examen

func Examen(H []Estudiante)

Nueva nota = nota anterior +/-2 random, +/- 1 renta Rmin + Ce es la referencia para la renta

func GiniRenta

func GiniRenta(H []Estudiante) float64

func GiniTotal

func GiniTotal(H []Estudiante) float64

func GraficoN

func GraficoN(H []Estudiante, n int)

func GraficoRN

func GraficoRN(H []Estudiante, n int)

func Main

func Main()

func NotaMediaMejor

func NotaMediaMejor(H []Estudiante, n int) float64

func Pobres

func Pobres(H []Estudiante) int

func Print

func Print(H []Estudiante)

func PuedenEstudiar

func PuedenEstudiar(H []Estudiante) int

func Stats

func Stats(H []Estudiante)

Types

type Estudiante

type Estudiante struct {
	// Renta es la renta personal del estudiante. Generamos un valor aleatorio
	// dentro de una distribución centrada en Rmed, con una dispersión que
	// acerque su coeficiente Gini al real (0.34 en 2011, para España).
	// La distribución de rentas es cercana a log-normal.
	Renta float64

	// Beca es obviamente la cantidad asignada por el algoritmo a este estudiante.
	Beca float64

	// Nota es la nota que sirve de parámetro en el algoritmo oficial
	Nota float64
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL