0%

简介

​任何周期性函数,都可以看成不同相位、不同振幅的正弦波的叠加。(误)
(正弦曲线无法组合成一个带有棱角的信号。(例如方波,下文会有图像)但是,我们可以用正弦曲线来非常逼近地表示它,逼近到两种表示方法几乎不存在差别)

阅读全文 »

背景

​ 某次试验含有97传感器需要从中识别某个突变信号。这些传感器可能包含多种传感器以及一些异常传感器(输出一堆无效异常号)。实验要求识别精度较高这里对应用的逐步逼近法特征识别算法做个简单介绍。

阅读全文 »

简介

​ 在频域的滤波,有些时候简单的高通滤波、低通滤波并不能很好的解决问题。比如有一种业务场景: 某次实验需要用到几个传感器在实验开始前启动传感器,一秒后启动实验装置,实验持续一秒。如此、我们就可以确定传感器数据中前一秒的数据全为无效信号即可定义为全为杂波、传感器数据中第二秒的数据为有效信号与无效信号的一个叠加信号。也就是说将第二秒的叠加信号减去第一秒的无效信号即为有效信号。改文档详细介绍这种滤波算法的过程以及优劣。

阅读全文 »

最近给函数打log时,想指出加入Log的地方,包括时间、文件名、函数名、行号,这样以后找起来会比较容易。通过设这logging的fomatter可以实现,但每次都做太费劲了,于是找了个得到这些信息的方法,也是使用了logging里面的做法,通过异常得到执行信息。

1
2
3
4
5
6
7
8
9
10
# -*- coding: utf-8 -*- 
import sys
import time
def findcaller():
try:
raise Exception
except:
f = sys.exc_info()[2].tb_frame.f_back
return '%s, %s, %s, %s, ' % (str(time.time()), f.f_code.co_filename, f.f_code.co_name, str(f.f_lineno))
print findcaller()

操作说明:(居然还有这种操作?)

通过异常然后通过向上查找的方式,找到调用的信息,得到执行信息。

参考&引用

http://blog.sina.com.cn/s/blog_6200c1440100xvrp.html
http://www.cnblogs.com/njucslzh/archive/2012/09/17/2688932.html

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
28
29
30
<?php
$data = array();//方法1:
/**
* 获取客户端IP地址
* @param integer $type 返回类型 0 返回IP地址 1 返回IPV4地址数字
* @return mixed
*/
function get_client_ip($type = 0) {
$type = $type ? 1 : 0;
static $ip = NULL;
if ($ip !== NULL) return $ip[$type];
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$arr = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
$pos = array_search('unknown',$arr);
if(false !== $pos) unset($arr[$pos]);
$ip = trim($arr[0]);
}elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
}elseif (isset($_SERVER['REMOTE_ADDR'])) {
$ip = $_SERVER['REMOTE_ADDR'];
}
// IP地址合法验证
$long = sprintf("%u",ip2long($ip));
$ip = $long ? array($ip, $long) : array('0.0.0.0', 0);
return $ip[$type];
}
$data['ip'] = get_client_ip();
$jos = json_encode($data);
echo "var CLIENTIP='$jos'";
?>
阅读全文 »