intregration into workflow contd.
This commit is contained in:
parent
2841137f8e
commit
89dc943dce
46
example.py
46
example.py
@ -7,6 +7,7 @@ tdxpath = b"samples/SineData.tdx"
|
||||
|
||||
# create instance of ripper class
|
||||
RP = tdm_ripper.pytdmripper(tdmpath)
|
||||
RP = tdm_ripper.pytdmripper(b"/Users/mariofink/git/Conti_HBS/data_science/python/features/tdm_tmp_slow/75_1/Messung.tdm")
|
||||
|
||||
# provide overview of available channels
|
||||
RP.show_channels()
|
||||
@ -14,27 +15,30 @@ RP.show_channels()
|
||||
print(RP.num_channels())
|
||||
print(RP.num_groups())
|
||||
|
||||
for i in range(0,RP.num_groups()):
|
||||
print(str(i+1).rjust(10)+str(RP.no_channels(i)).rjust(10))
|
||||
|
||||
# print particular channel to file
|
||||
RP.print_channel(1,b"SineData_extract.dat")
|
||||
# RP.print_channel(1,b"SineData_extract.dat")
|
||||
|
||||
# extract channel and return it to numpy array
|
||||
channels = RP.get_channel(1)
|
||||
Nlen = len(channels)
|
||||
channels = np.append(channels,RP.get_channel(2))
|
||||
channels = np.append(channels,RP.get_channel(3))
|
||||
channels = np.append(channels,RP.get_channel(4))
|
||||
channels = np.append(channels,RP.get_channel(5))
|
||||
channels = np.append(channels,RP.get_channel(6))
|
||||
channels = np.append(channels,RP.get_channel(7))
|
||||
channels = np.append(channels,RP.get_channel(8))
|
||||
print(channels.shape)
|
||||
print("\n\n")
|
||||
print(channels[0:40])
|
||||
|
||||
x = np.linspace(0,Nlen,Nlen)
|
||||
plt.plot(x,channels[0:Nlen])
|
||||
plt.plot(x,channels[Nlen:2*Nlen])
|
||||
plt.plot(x,channels[2*Nlen:3*Nlen])
|
||||
|
||||
plt.grid()
|
||||
plt.show()
|
||||
# channels = RP.get_channel(1)
|
||||
# Nlen = len(channels)
|
||||
# channels = np.append(channels,RP.get_channel(2))
|
||||
# channels = np.append(channels,RP.get_channel(3))
|
||||
# channels = np.append(channels,RP.get_channel(4))
|
||||
# channels = np.append(channels,RP.get_channel(5))
|
||||
# channels = np.append(channels,RP.get_channel(6))
|
||||
# channels = np.append(channels,RP.get_channel(7))
|
||||
# channels = np.append(channels,RP.get_channel(8))
|
||||
# print(channels.shape)
|
||||
# print("\n\n")
|
||||
# print(channels[0:40])
|
||||
#
|
||||
# x = np.linspace(0,Nlen,Nlen)
|
||||
# plt.plot(x,channels[0:Nlen])
|
||||
# plt.plot(x,channels[Nlen:2*Nlen])
|
||||
# plt.plot(x,channels[2*Nlen:3*Nlen])
|
||||
#
|
||||
# plt.grid()
|
||||
# plt.show()
|
||||
|
@ -209,6 +209,10 @@ void tdm_ripper::parse_structure()
|
||||
assert( num_channels_ == (int)channel_id_.size()
|
||||
&& num_channels_ == (int)channel_name_.size()
|
||||
&& num_channels_ == (int)channels_group_.size() );
|
||||
|
||||
std::cout<<std::setw(25)<<std::left<<"number of channels:"<<std::setw(10)<<num_channels_<<"\n";
|
||||
for ( int i = 0; i < num_groups_; i++ ) std::cout<<std::setw(25)<<std::left<<"group"<<std::setw(10)<<i+1<<std::setw(10)<<no_channels(i+1)<<"\n";
|
||||
std::cout<<std::right<<"\n\n";
|
||||
}
|
||||
|
||||
void tdm_ripper::list_channels(std::ostream& gout, int width, int maxshow)
|
||||
|
@ -148,6 +148,12 @@ public:
|
||||
{
|
||||
return num_groups_;
|
||||
}
|
||||
const int& no_channels(int groupid)
|
||||
{
|
||||
assert( groupid > 0 && groupid <= num_channels_ );
|
||||
|
||||
return num_channels_group_[groupid-1];
|
||||
}
|
||||
|
||||
const std::string& channel_name(int channelid)
|
||||
{
|
||||
|
19
main.cpp
19
main.cpp
@ -25,17 +25,22 @@ int main(int argc, char* argv[])
|
||||
std::cout<<"number of channels "<<ripper.num_channels()<<"\n\n";
|
||||
std::cout<<"number of groups "<<ripper.num_groups()<<"\n\n";
|
||||
|
||||
for ( int i = 0; i < ripper.num_groups(); i++ )
|
||||
{
|
||||
std::cout<<std::setw(10)<<i+1<<std::setw(10)<<ripper.no_channels(i+1)<<"\n";
|
||||
}
|
||||
|
||||
// std::vector<double> channA = ripper.get_channel(1);
|
||||
// for ( auto el: channA ) std::cout<<el<<"\n";
|
||||
// std::cout<<"\n\n";
|
||||
|
||||
for ( int i = 0; i < 30; i++ )
|
||||
// for ( int i = 0; i < ripper.num_channels(); i++ )
|
||||
// for ( int i = 11880; i < ripper.num_channels(); i++ )
|
||||
{
|
||||
ripper.print_channel(i+1,("data/channel_"+std::to_string(i+1)+"_"
|
||||
+ripper.channel_name(i+1)+".dat").c_str());
|
||||
}
|
||||
// for ( int i = 0; i < 30; i++ )
|
||||
// // for ( int i = 0; i < ripper.num_channels(); i++ )
|
||||
// // for ( int i = 11880; i < ripper.num_channels(); i++ )
|
||||
// {
|
||||
// ripper.print_channel(i+1,("data/channel_"+std::to_string(i+1)+"_"
|
||||
// +ripper.channel_name(i+1)+".dat").c_str());
|
||||
// }
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
3
makefile
3
makefile
@ -22,6 +22,9 @@ clean :
|
||||
pylib : setup.py pytdm_ripper.pyx tdm_ripper.pxd tdm_ripper.o
|
||||
python3 setup.py build_ext --inplace
|
||||
|
||||
install : setup.py pytdm_ripper.pyx tdm_ripper.pxd lib/tdm_ripper.cpp lib/tdm_ripper.hpp
|
||||
python3 setup.py install
|
||||
|
||||
lib/libtdmripper.a :
|
||||
make -C lib libtdmripper.a
|
||||
|
||||
|
@ -19,6 +19,11 @@ cdef class pytdmripper:
|
||||
def num_channels(self):
|
||||
return self.cripp.num_channels()
|
||||
|
||||
def no_channels(self, int groupid):
|
||||
assert (groupid >= 0 and groupid < self.cripp.num_groups()), "index of group must be in [0,n-1]"
|
||||
groupidinc = groupid+1
|
||||
return self.cripp.no_channels(groupidinc)
|
||||
|
||||
def num_groups(self):
|
||||
return self.cripp.num_groups()
|
||||
|
||||
|
@ -13,6 +13,7 @@ cdef extern from "tdm_ripper.hpp":
|
||||
tdm_ripper(string) except +
|
||||
void list_channels()
|
||||
int num_channels()
|
||||
int no_channels(int)
|
||||
int num_groups()
|
||||
vector[double] get_channel(int)
|
||||
void print_channel(int,const char*)
|
||||
|
Loading…
x
Reference in New Issue
Block a user