File Coverage

blib/lib/Lab/Instrument/TemperatureDiode/RO600.pm
Criterion Covered Total %
statement 11 24 45.8
branch 0 4 0.0
condition 0 9 0.0
subroutine 4 6 66.6
pod 0 2 0.0
total 15 45 33.3


line stmt bran cond sub pod time code
1             package Lab::Instrument::TemperatureDiode::RO600;
2             #ABSTRACT: RO600 (????)
3             $Lab::Instrument::TemperatureDiode::RO600::VERSION = '3.880';
4 1     1   1761 use v5.20;
  1         4  
5              
6 1     1   7 use strict;
  1         4  
  1         22  
7 1     1   4 use Math::Complex;
  1         3  
  1         210  
8 1     1   18 use Lab::Instrument::TemperatureDiode;
  1         3  
  1         266  
9              
10             our @ISA = ("Lab::Instrument::TemperatureDiode");
11              
12             sub new {
13 0     0 0   my $proto = shift;
14 0   0       my $class = ref($proto) || $proto;
15 0           my $self = $class->SUPER::new(@_);
16 0           $self->${ \( __PACKAGE__ . '::_construct' ) }(__PACKAGE__);
  0            
17              
18 0           return $self;
19             }
20              
21             sub convert2Kelvin {
22 0     0 0   my $value = shift;
23              
24 0 0 0       if ( $value < 1725.8 and $value >= 1100.75 )
    0 0        
25             { # approximieren durch polynom
26 0           $value = (-0.3199412263 + 5.7488447e-8 * ( $value**2 ) * log($value)
27             - 8.840903e-11 * $value**3 )**(-1);
28             }
29             elsif ( $value >= 1725.82 and $value <= 29072.86 ) {
30 0           $value = (-0.771272244 + 0.00010067892 * $value * log($value)
31             - 1.071888e-9 * ( $value**2 ) * log($value) )**(-1);
32             }
33             else {
34 0           warn "no valid TEMPERATURE VALUE.";
35 0           return -1;
36             }
37              
38 0           return $value;
39             }
40              
41             1;
42              
43             __END__
44              
45             =pod
46              
47             =encoding UTF-8
48              
49             =head1 NAME
50              
51             Lab::Instrument::TemperatureDiode::RO600 - RO600 (????)
52              
53             =head1 VERSION
54              
55             version 3.880
56              
57             =head1 COPYRIGHT AND LICENSE
58              
59             This software is copyright (c) 2023 by the Lab::Measurement team; in detail:
60              
61             Copyright 2013 Christian Butschkow
62             2016 Simon Reinhardt
63             2017 Andreas K. Huettel
64             2020 Andreas K. Huettel
65              
66              
67             This is free software; you can redistribute it and/or modify it under
68             the same terms as the Perl 5 programming language system itself.
69              
70             =cut