Inicio > kodegeek, python, vida sana > ¿Cuanto esfuerzo poner al correr? Usando un monitor de pulsaciones

¿Cuanto esfuerzo poner al correr? Usando un monitor de pulsaciones

Domingo, 25 de diciembre de 2011

Primero que todo, ¡Feliz navidad!. Hoy me dieron de regalo un monitor de pulsaciones (Polar Link, compatible con Nike GPS awatch), la idea es mantener mis niveles de esfuerzo constantes y en niveles seguros.

Así que hoy me decidí a probarlo con una carrera corta de sólo dos millas, ni tan rápido ni tan lento; La configuración del dispositivo fué trivial y aunque se sintió raro tener una cinta en el pecho durante los primeros 5 minutos luego la sensación se disipó y pude olvidarme por completo que el aparato estaba allí.

La teoría sobre cuales rangos son seguros la pueden encontrar en este enlace, pero si usted es un corcho como yo ya seguro tiene un script para hacer las conversiones:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/env python
# Heart rate range calculator, for both aerobic and anaerobic ranges
# http://kodegeek.com/blog
# http://www.livestrong.com/article/179970-a-healthy-heart-rate-while-running/
def heartRate(age, anaerobic=False):
        maxHearthRate = 220 - age
        bound = []
        if not anaerobic:
                bound.append(0.50 * maxHearthRate)
                bound.append(0.85 * maxHearthRate)
 
        else:
                bound.append(0.80 * maxHearthRate)
                bound.append(0.90 * maxHearthRate)
        return bound
 
if __name__ == "__main__":
        import sys
        args = sys.argv[1:]
        if len(args) == 2:
                res = heartRate(int(args[0]), {'true': True, 'false': False}.get(args[1].lower()))
                print "%s,  %s " % (res[0], res[1])

Por ejemplo, para alguien de mi edad estos deberian ser los rangos aeróbicos y anaeróbicos:

1
2
3
4
5
6
 
Macintosh:python josevnz$ python com/kodegeek/fitness/heartrate.py 38 false
91.0,  154.7 
Macintosh:python josevnz$ python com/kodegeek/fitness/heartrate.py 38 true
145.6,  163.8 
Macintosh:python josevnz$

Según el monitor, en promedio mis pulsaciones promedio estuvieron en 165, solamente estuve un %38 del tiempo dentro de mi rango aeróbico. Muy alto, al menos que este leyendo algo mal. Ahora me sale hacer mi tarea :-)

kodegeek, python, vida sana

  1. Domingo, 25 de diciembre de 2011 a las 17:40 | #1

    Conseguí una formula un poco más acertada:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    
    #!/usr/bin/env python
    # Heart rate range calculator, for both aerobic and anaerobic ranges
    # http://kodegeek.com/blog
    # Original formula:
    # http://www.livestrong.com/article/179970-a-healthy-heart-rate-while-running/
    # Improved formula, considers age
    # http://www.brianmac.co.uk/maxhr.htm
    def heartRate(age, anaerobic=False):
            #maxHearthRate = 220 - age
            maxHearthRate = 206.9 - (0.67 * age)
            bound = []
            if not anaerobic:
                    bound.append(0.70 * maxHearthRate)
                    bound.append(0.80 * maxHearthRate)
     
            else:
                    bound.append(0.80 * maxHearthRate)
                    bound.append(0.90 * maxHearthRate)
            bound.append(maxHearthRate)
            return bound
     
    if __name__ == "__main__":
            import sys
            args = sys.argv[1:]
            if len(args) == 2:
                    res = heartRate(int(args[0]), {'true': True, 'false': False}.get(args[1].lower()))
                    print "%s,  %s, %s " % (res[0], res[1], res[2])

    Esta produce:

    1
    2
    3
    4
    5
    
    Macintosh:python josevnz$ python com/kodegeek/fitness/heartrate.py 38 false
    127.008,  145.152, 181.44 
    Macintosh:python josevnz$ python com/kodegeek/fitness/heartrate.py 38 true
    145.152,  163.296, 181.44 
    Macintosh:python josevnz$
  1. Domingo, 25 de diciembre de 2011 a las 17:20 | #1