Page 2 of 5

Re: Athlete, route and equipment custom fields filling

PostPosted: Thu Sep 02, 2010 8:18 pm
by GaryS
camel wrote:It'll be nice to post exact calculations what you need, exact fields needed for that calculations etc.


For the selected Trails segment, Average Pace by Shoe type. Calculation probably involves an initial segment sort by shoe, then just an average pace calculation.

The idea is to see which pair of shoes perform best on certain trail segments.

Definitely not needed in first release. Just an idea for the future.

For me, just extend Trails so that segments can be compared across all activities.

That will be a nice and very useful accomplishment.

Thanks.

Re: Athlete, route and equipment custom fields filling

PostPosted: Fri Sep 03, 2010 3:28 am
by camel
GaryS wrote:
camel wrote:It'll be nice to post exact calculations what you need, exact fields needed for that calculations etc.


For the selected Trails segment, Average Pace by Shoe type. Calculation probably involves an initial segment sort by shoe, then just an average pace calculation.

The idea is to see which pair of shoes perform best on certain trail segments.

Definitely not needed in first release. Just an idea for the future.

For me, just extend Trails so that segments can be compared across all activities.

That will be a nice and very useful accomplishment.

Thanks.


This is supported in actual build without adding anything.
So I still don't see usage of athlete view or equipment view for now. :)

Re: Athlete, route and equipment custom fields filling

PostPosted: Sun Sep 05, 2010 3:10 am
by Stumpjumper68
camel wrote:
I vote for Athlete fields. Would be very intresting to see a comparison of weight,sleep hours,avg hr and speed on a hill.


And do you need for this something to be added?

Because you can already show fields from athlete view in report with activity.
And report them. Of course you need calculated trail field, but I see no need for calculated athlete field or some calculation from athlede field.

Perhaps I need exact explanation what you need to calculate and how with athlete fields.

I need to know what you want to calculate, needed fields. And where will be result of calculation saved. On activity custom field, on athlete custom field?

Do you want to have result of calculation from trails to be shown in athlete custom field? etc.

Thanks
Peter
[/quote]

I would like to see for a trail what happen if I whey 2 kg more or less. If I sleep 2 hours less than normal am I faster on that hill or does my avg HR changes on that day? So similar to performance prediction plugin, but just for my own physis, should be much more accurate.

PostPosted: Sun Sep 05, 2010 3:23 am
by camel
I would like to see for a trail what happen if I whey 2 kg more or less. If I sleep 2 hours less than normal am I faster on that hill or does my avg HR changes on that day? So similar to performance prediction plugin, but just for my own physis, should be much more accurate.


Ok so you want to fill your calculated data stilll on activity. But you need fields as weight, hours of sleep etc from athlete view for data of activity.

I'll try to add this before publication of plugin. Or for open beta testing.

Thanks
Peter

PostPosted: Sun Sep 05, 2010 3:59 am
by Stumpjumper68
Great, looking forward to the beta testing. 8)

PostPosted: Sun Sep 05, 2010 12:01 pm
by camel
I would like to see for a trail what happen if I whey 2 kg more or less. If I sleep 2 hours less than normal am I faster on that hill or does my avg HR changes on that day? So similar to performance prediction plugin, but just for my own physis, should be much more accurate.


Athlete fields will be supported. And custom fields of athlete too.

Already implemented in latest beta build.

Looking forward for another requests.
Thanks
Peter

PostPosted: Thu Sep 16, 2010 7:01 am
by camel
First post with description of plugin was updated. With actual state of plugin.

Nice day
Peter

CALCULATIONS ON ALL TRACKPOINTS

PostPosted: Wed Sep 29, 2010 8:34 am
by camel
Added experimental support for new exciting features:

Imagine that I want to know, how fast I'm when having heart rate between 170-180.
So I want to calculate my average pace only on that parts of activity, where heart rate is >= 170 and heart rate is <= 180.
This is now possible! Here is formula:
{dataTrack}.Where(o => o.HR >= 170 && o.HR <= 180).Average(o => o.Pace)

So now we can make filters on all points from activity, take only subgroup of them. Make anything with them etc. There are nearly endless possibilities with this. Do transformations etc. DataTrack is simple a collection of all points on one activity and it has bunch of properties. See below:

Every points of track have this properties (o is point of track in example):

* HR
* Pace
* Speed
* Elevation
* Grade
* Cadence
* Power
* Elapsed

Elapsed means time elapsed in seconds.

Perhaps more examples will give you a point. Sorry I know that syntax is hard. But that's a prize for powerfull features. This is feature only for very very advanced users.

Ok one user wanted for example this:
I want to see my heart rate at third minute of activity. (for accurate results I will show you avg hr from 3:00 - 3:10 of activity, because only one value at 3:00 could be inaccurate)
Here is formula:
{dataTrack}.Where(o => o.Elapsed >= 180 && o.Elapsed <= 190).Average(o => o.HR)

Or I want to see my avg heart rate needed to run in pace 5:00-5:30km/min
Here it is:
{dataTrack}.Where(o => o.Pace >= 5 && o.Pace <= 5.5).Average(o => o.HR)


etc
...

PostPosted: Wed Sep 29, 2010 9:22 am
by PissedOffCil
Damn I'm not even sure I understand the query by reading it. A SQL like syntax would have been better if you ask me. I guess it's a little late now.

Do you plan on adding a debugger with your plugin? heheheh

PostPosted: Wed Sep 29, 2010 9:34 am
by camel
PissedOffCil wrote:Damn I'm not even sure I understand the query by reading it. A SQL like syntax would have been better if you ask me. I guess it's a little late now.

Do you plan on adding a debugger with your plugin? heheheh


In fact it's pure C# LINQ. Just replace {DataTrack} with List<DataTrackPoint>
And you have c# linq with lambda expressions:
List<DataTrackPoint>.Where(o => o.HR >= 170 && o.HR <= 180).Average(o => o.Pace)

Microsoft was working for years too make it looking like SQL and you say this... ts ts ts ;)

In fact it can be written in this syntax too:
(from o in {DataTrack} where o.HR >= 170 && o.HR <= 180).Average(o => o.Pace)

...

It's only pure linq.

Yes I know that is hard to understand, but it will be only small part of plugin for advanced users. Others will just have simpler formulas with some UI. Or just prepared formulas where they will not see real syntax.

PostPosted: Wed Sep 29, 2010 12:46 pm
by PissedOffCil
camel wrote:pure linq.


I'm not familiar with LINQ but MS failed to make it look like SQL for sure...

PostPosted: Thu Oct 07, 2010 4:54 pm
by Stumpjumper68
Hello Peter,

is it possible to set a time frame for custom fields.
For example if you would like to set a target for next Year 1.1.11 to 31.12.11 distance 5.000 km or 50.000 hm. So if I do 50 km on 2.1.11 I would like to see 4.950 km left for this Year. Do you think it's possible?

PostPosted: Thu Oct 07, 2010 5:16 pm
by camel
Stumpjumper68 wrote:Hello Peter,

is it possible to set a time frame for custom fields.
For example if you would like to set a target for next Year 1.1.11 to 31.12.11 distance 5.000 km or 50.000 hm. So if I do 50 km on 2.1.11 I would like to see 4.950 km left for this Year. Do you think it's possible?


I don't know which format of date you use on your computer. But If I create {Date} calculated field it will fill for example 9/9/2010

So I have created this formula for your usage with some hacking...:
Expression: 5000-{Distance(Sum,365)}/1000
Condition: {DATE}.Contains("2011")

So it will simple calculate sum of distance for past 365 days but only for activities with year 2011. Perhaps you have a point.
But yes it will be not fastest calculation on world if you have many activities.

I can imagine a workaround for faster calculation that you will calculate sum of sum of the same calculated field. But this will be harder to understand.
Just test it if it's enough fast for you, or it's a problem.

I have tested in on my logbook, and it was working.

PostPosted: Fri Oct 08, 2010 3:35 am
by gmorgan
Hello,
I am so desperate for this type of functionality. I want something that will search my laps (splits) and find the label, then report back the time for that split.
Your plug-in would appear to do that so I'd love to test/use it.

Any chance?

Thanks :D

PostPosted: Fri Oct 08, 2010 4:53 am
by camel
gmorgan wrote:Hello,
I am so desperate for this type of functionality. I want something that will search my laps (splits) and find the label, then report back the time for that split.
Your plug-in would appear to do that so I'd love to test/use it.

Any chance?

Thanks :D


It's now in closed beta phase. But it's very near to going public. I'm just lazy to write manuals. And I have not very much time now.

So if you want to participate in beta testing, and you are ready for little harder start, because documentation is only minor now.

Just pm me your email address and I can send you some intructions with actual build of plugin.

From features of point view it's nearly complete. But I have some things in TODO before official publication.

PostPosted: Fri Oct 08, 2010 6:35 am
by Stumpjumper68
camel wrote:
Stumpjumper68 wrote:Hello Peter,

is it possible to set a time frame for custom fields.
For example if you would like to set a target for next Year 1.1.11 to 31.12.11 distance 5.000 km or 50.000 hm. So if I do 50 km on 2.1.11 I would like to see 4.950 km left for this Year. Do you think it's possible?


I don't know which format of date you use on your computer. But If I create {Date} calculated field it will fill for example 9/9/2010

So I have created this formula for your usage with some hacking...:
Expression: 5000-{Distance(Sum,365)}/1000
Condition: {DATE}.Contains("2011")

So it will simple calculate sum of distance for past 365 days but only for activities with year 2011. Perhaps you have a point.
But yes it will be not fastest calculation on world if you have many activities.

I can imagine a workaround for faster calculation that you will calculate sum of sum of the same calculated field. But this will be harder to understand.
Just test it if it's enough fast for you, or it's a problem.

I have tested in on my logbook, and it was working.


Brilliant worked like a charm,it just took more than 1 minute to calculate the data for 1 field (on a slow office PC). The progress bar runs trough very fast (10 sec.) but the popup stays there for more than 1 minute.

1 minor thing is that I still have to do more than 2000 km in the last quarter, so I'm a bit behind my target.

Many thanks for this great new tool. I've read in a different thread about
the resting HR calculation you build, would you like to share it with us,
I guess it will gives valueable data for me because I usually have a lot of stops during my bikerides (first on hill wait the longest time;-).

PostPosted: Fri Oct 08, 2010 10:29 am
by camel
I'll post that calculation with new build of plugin.

Because I have added DataTrackWithPauses feature to get this working.
SO now we have one datatrack without pauses incluced and one datatrack with points when timer was paused. Sometimes it's usable to know where pauses are. And sometimes it's better to use simplified approach.

And this formula will be supported in this build out of the box. So you will don't need crazy expression.

You will just write {RECOVERYHR60}

Please be patient it will be perhaps in few hours

PostPosted: Mon Oct 11, 2010 5:56 am
by Stumpjumper68
camel wrote:I'll post that calculation with new build of plugin.

Because I have added DataTrackWithPauses feature to get this working.
SO now we have one datatrack without pauses incluced and one datatrack with points when timer was paused. Sometimes it's usable to know where pauses are. And sometimes it's better to use simplified approach.

And this formula will be supported in this build out of the box. So you will don't need crazy expression.

You will just write {RECOVERYHR60}

Please be patient it will be perhaps in few hours


It works perfectly.1+++

As we do have a lot of space in custom fields :lol: would it be possible
to display 2 or 3 additional numbers, for example best during the last 30 days, 365 days and overall days in one field?

PostPosted: Mon Oct 11, 2010 6:00 am
by camel
Stumpjumper68 wrote:
camel wrote:I'll post that calculation with new build of plugin.

Because I have added DataTrackWithPauses feature to get this working.
SO now we have one datatrack without pauses incluced and one datatrack with points when timer was paused. Sometimes it's usable to know where pauses are. And sometimes it's better to use simplified approach.

And this formula will be supported in this build out of the box. So you will don't need crazy expression.

You will just write {RECOVERYHR60}

Please be patient it will be perhaps in few hours


This formulas: {RECOVERYHR60} is supported in latest build.
You may have it in email.

And to make you crazy here is how it looks if you want to write it with DataTrack feature:
{DATATRACKWITHPAUSES}.Select((o,index) => new {Elapsed = o.Elapsed, HR = ({DATATRACKWITHPAUSES}[((index+60) < {DATATRACKWITHPAUSES}.Count) ? index + 60 : index].HR == 0) ? 0 : o.HR - {DATATRACKWITHPAUSES}[((index+60) < {DATATRACKWITHPAUSES}.Count) ? index + 60 : index].HR}).OrderBy(o => o.HR).Last()

You will just change all 60 numbers in formula to number of seconds you want for example 120.
But this formula will be supported with parameter for time in future builds.
And any usable formula that users will send me.

I will implemented some formulas to plugin core. And these formulas will be calculated much faster, because they are not interpreted.

You need to have latest build to support DataTrackWithPauses feature.

Nice day ;)
Peter

PostPosted: Mon Oct 11, 2010 6:16 am
by camel
I have added support for new features for finding fastest time or fastest distance.

So you want to find your fastest 1000meters in activity? Here is formula:
{FASTESTDISTANCE(1000)}
And it will return time in seconds needed for this fastest 1km.

Or you want to see longest distance that you went in time of 120seconds?
{FASTESTTIME(120)}
And it will return distance in meters.

Of course it's easy to calculate pace or speed from these values.

P.S:
I have now harder time in work but in few days (5-14 days :)) I will be moving to really public beta with documentation and tutorials.

PostPosted: Tue Oct 12, 2010 5:32 am
by Stumpjumper68
Stumpjumper68 wrote:
camel wrote:I'll post that calculation with new build of plugin.

Because I have added DataTrackWithPauses feature to get this working.
SO now we have one datatrack without pauses incluced and one datatrack with points when timer was paused. Sometimes it's usable to know where pauses are. And sometimes it's better to use simplified approach.

And this formula will be supported in this build out of the box. So you will don't need crazy expression.

You will just write {RECOVERYHR60}

Please be patient it will be perhaps in few hours


Hi Peter,

I hit submit before I've entered any text and added the text later on. In the meantime you've send 2 new posts. So I post it again now to bring it to your attention.

It works perfectly.1+++

As we do have a lot of space in custom fields :lol: would it be possible
to display 2 or 3 additional numbers, for example best during the last 30 days, 365 days and overall days in one field?

PostPosted: Tue Oct 12, 2010 7:13 am
by camel
As we do have a lot of space in custom fields :lol: would it be possible
to display 2 or 3 additional numbers, for example best during the last 30 days, 365 days and overall days in one field?


I think that it's possible (not tried):
If you have custom field with type of text set, then you can write this formula:
"Best 30: " + {Distance(Max,30)} + "-" + "Best 365: " + {Distance(Max,365)}

Etc as you want. You can just concatenate strings.

BUT you will lost ability to make charts from this custom field, because it's text.

Personally I don't use detail view for custom fields. I have custom fields shown in list of columns on daily activity. Or in activity reports.

Peter

PostPosted: Tue Oct 12, 2010 3:33 pm
by trell
Is this plugin available and where is it?

PostPosted: Wed Oct 13, 2010 3:08 am
by camel
trell wrote:Is this plugin available and where is it?


Hi,
if you are ready to help with beta testing, you can send me a pm with your email address. (but it will be a llittle harder to start, there are some tutorials, but not all features are described)

But for standard users, plugin is not yet published. So if you don't want to do beta testing (I need feedback from users), you can wait few days weeks, when plugin will be officialy released at least to public beta.

Nice day
Peter

PostPosted: Thu Oct 14, 2010 2:58 pm
by mazoaguirre
hi

in conditions i see that can use {CATEGORY}.Contains("Correr")

my question is

there is a list of modifiers (like Contains) that can be used