ARTS  2.4.0(git:4fb77825)
artstime.cc File Reference

Stuff related to time. More...

#include <ctime>
#include <stdlib.h>
#include "artstime.h"

Go to the source code of this file.

Functions

TimeStep time_stepper_selection (const String &time_step)
 
Time next_even (const Time &t, const TimeStep &dt)
 Returns the next time after t with an even time-step. More...
 
ArrayOfIndex time_steps (const ArrayOfTime &times, const String &step)
 Finds the index matching demands in a list of times. More...
 
std::ostream & operator<< (std::ostream &os, const Time &t)
 Output for Time. More...
 
std::istream & operator>> (std::istream &is, Time &t)
 Input for Time. More...
 
Time mean_time (const ArrayOfTime &ts, Index s, Index e)
 Computes the average time in a list. More...
 

Detailed Description

Stuff related to time.

Author
Richard Larsson
Date
2020-04-13

Definition in file artstime.cc.

Function Documentation

◆ mean_time()

Time mean_time ( const ArrayOfTime ts,
Index  s = 0,
Index  e = -1 
)

Computes the average time in a list.

Parameters
[in]tsA list of time
[in]sA starting index; valid range [0, ts.nelem())
[in]eThe end+1 index; valid range [-1, ts.nelem()]; -1 is treated as ts.nelem()

Definition at line 135 of file artstime.cc.

◆ next_even()

Time next_even ( const Time t,
const TimeStep dt 
)

Returns the next time after t with an even time-step.

Parameters
[in]tA time
[in]dtA duration of time
Returns
Next even time, e.g., 14:14:00 with dt as 10 minutes gives 14:20:00

Definition at line 50 of file artstime.cc.

References Time::EpochTime().

Referenced by time_steps().

◆ operator<<()

std::ostream& operator<< ( std::ostream &  os,
const Time t 
)

Output for Time.

Definition at line 90 of file artstime.cc.

References Time::PartOfSecond(), Time::toStruct(), and ARTS::Var::x().

◆ operator>>()

std::istream& operator>> ( std::istream &  is,
Time t 
)

Input for Time.

Definition at line 108 of file artstime.cc.

References Array< base >::nelem(), my_basic_string< charT >::split(), and ARTS::Var::x().

◆ time_stepper_selection()

TimeStep time_stepper_selection ( const String time_step)

Definition at line 32 of file artstime.cc.

References my_basic_string< charT >::tolower(), and ARTS::Var::x().

Referenced by time_steps().

◆ time_steps()

ArrayOfIndex time_steps ( const ArrayOfTime times,
const String step 
)

Finds the index matching demands in a list of times.

The first index is 0 and the second index is the start of the first even period of the given stepsize

The last index is times.nelem(). If output has 1 element, no range was found matching the criteria.

Parameters
[in]timesTimes sorted in ascending order
[in]stepA duration of time
Returns
Starting index of the time-series

Definition at line 60 of file artstime.cc.

References N, Array< base >::nelem(), next_even(), time_stepper_selection(), and time_steps().

Referenced by test01(), time_steps(), and ybatchTimeAveraging().