From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 130073 invoked by alias); 2 May 2018 20:58:33 -0000 Mailing-List: contact gsl-discuss-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gsl-discuss-owner@sourceware.org Received: (qmail 130058 invoked by uid 89); 2 May 2018 20:58:32 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=HTo:U*gsl-discuss, H*MI:edu, rolling, patrick X-HELO: NAM02-CY1-obe.outbound.protection.outlook.com Received: from mail-cys01nam02on0108.outbound.protection.outlook.com (HELO NAM02-CY1-obe.outbound.protection.outlook.com) (104.47.37.108) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 02 May 2018 20:58:30 +0000 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=patrick.alken@colorado.edu; Received: from palken-co-ll.ngdc.noaa.gov (140.172.179.43) by CY1PR0301MB1243.namprd03.prod.outlook.com (2a01:111:e400:4c5a::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.715.18; Wed, 2 May 2018 20:58:26 +0000 To: "gsl-discuss@sourceware.org" From: Patrick Alken Subject: New routines for moving window statistics and filters Message-ID: Date: Wed, 02 May 2018 20:58:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BN3PR03CA0102.namprd03.prod.outlook.com (2603:10b6:400:4::20) To CY1PR0301MB1243.namprd03.prod.outlook.com (2a01:111:e400:4c5a::25) X-MS-PublicTrafficType: Email X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(2017052603328)(7153060)(7193020);SRVR:CY1PR0301MB1243; X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1243;3:65Hy10HBQcWAmmCTQ4rRXS56rbzRPoOh4sWYZ1WA+HrIAogHpAL/o9DQ7TQOgsAPQKOKa0guhkbTImhs6+yBZpt9f+O2FdWc1mKcz6ne2ePkQcvfnnA6kRLRfOfgfatn9h+HrkcUYmu8piFgUnAp6A0Ss2h+M2JZY3nHreBAoOs356wx++3OQSi5Ze4+ud+Ok4iR7v0QdtRAQQXetOwk1cZDrN2LMetR95DQdf7MI/vB0ROcOUF8+/8lw9iDwuQX;25:1ZNxvgq1/nSeMK7TalAa4ehc/ynVOC1ZsUCgDMVytTEmDgES4WIDMI4DToUSWVTRoTYIMfl0lM3iOGyQX9jq7oUu9YNaIRDzd02BZKYKEqTYv14FoDv2U6Hc9ixIzX4RJKJMfvLP3gb0Egog29AkXTQD0CuwaDyLGxHLH4JDqYruNV2UgP5lo5C3G9PgvaDN+CjcBa1XUY8o9u3OrQn1CL48b4UJxiJ/6Ur4n8pRGkYK9x3CyBZm1kKPg/1pN/OaMw8MSL63NABLGhEHsJlMJPUDrRebTLZlQXEInNygBCOAxEtgyq512Dv+PTKou0B1bJDqxxVqEU20NIwwEq9NLA==;31:YdaDfi16QaYwr248ocmI2GPNV2nyWm7USd+BZLcTjmzX4r9+UQI68qvM9CsV5+9vh8/PyekjeoF0TpkXei38wQxxcnQcxOkrUrx4jPw8LzYMVyYo6Ol7a1dp0pSpyYI1e/qOUNPP2xY5eiNpVrZCCYtqpxJwUIzgipRnkrYd9JOHEhqGVtLhgmVo4wAttU6BfOoxfTyvshM09EjIBSH5oS/hmZMKHsd2hbrb/W+lCPM= X-MS-TrafficTypeDiagnostic: CY1PR0301MB1243: X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1243;20:vvJOM/gHDx9xbqcRqyUbglUTY1xe3OQO6mFPHA0KUSfVSSTSPvirCrArvyxy/Ijr5kpE75xYqjRAVuWN51ORLnutVs8kCdS34vCXJwmcgd88zwaXopjx3V75vwMBE5DJRNO4EIRTowAr1pL+LHmUepU4cyaQF//y7++O3xkh5MmLVFKhgSeyHZvfC1jXmbApgNbkBdF86DSkNBodnW7HyUyX4ymt1jfn1nx8eZJ7BDn7Xw4OmZLNKS0Efdm8pwY8qWk/kuGo+SJ5/ChmmhT0F9r0vkbuQzt4JbwqrYqYue5TATIxpLtlnMXIr31XdJVnhNKe0mzLh0CT2kwvJCfjPGxjRl7HGLsK5XFAw1JM4gXUKc9xQlHZWJCmhcdk7RJFmba5mEC0UKE9KPQBPj1QlEZAQ5iIZ+VSFqM/zws5ppUv2aVCK5y/38JtkYAAvQexK8O5ZHDg+Ap+dcAreoiUUary+TGr8O+bBIWKln10fLdNbB8sa4jr2p/RBv7Bjm/F;4:1WapWDFagkJ0H2m8fFHxg4dLqo+EyZTyJspHUt837P/RRYdCrPkVRbHAtuYFNBZaKzGXeVSE6iGjIUK89ttvTaiVLms+E8natR4ENZSSq/KfsLGUABqJ5VCqkiqTWU2M7M/eghGC/ZJe2wqUaer4vixvNtkJ5GiwmXn3+PMkAXZ5hhpEBrwym0w4YDS50f8C0U9g22ZtGuQvEAZwwh75A5YQMqnBZ3yh6r255ndbyOi9jeOgNxRonVp1VVBW7HfWaKIuEH8t1UDikXEM0zW3rA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040522)(2401047)(5005006)(8121501046)(3002001)(93006095)(93001095)(3231254)(944501410)(52105095)(10201501046)(6041310)(201703131423095)(201702281529075)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(6072148)(201708071742011);SRVR:CY1PR0301MB1243;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0301MB1243; X-Forefront-PRVS: 06607E485E X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(396003)(366004)(376002)(346002)(39380400002)(39860400002)(199004)(189003)(2486003)(52116002)(68736007)(6116002)(3846002)(75432002)(305945005)(65826007)(31686004)(230700001)(36756003)(88552002)(8936002)(6486002)(97736004)(31696002)(2501003)(106356001)(105586002)(7736002)(5660300001)(53936002)(8676002)(2906002)(476003)(2351001)(81156014)(2616005)(6666003)(6916009)(81166006)(16526019)(64126003)(413944005)(486006)(956004)(6512007)(5640700003)(786003)(50466002)(316002)(23676004)(67846002)(26005)(6506007)(52146003)(47776003)(25786009)(65806001)(65956001)(66066001)(386003)(478600001)(58126008)(186003);DIR:OUT;SFP:1102;SCL:1;SRVR:CY1PR0301MB1243;H:palken-co-ll.ngdc.noaa.gov;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; Received-SPF: None (protection.outlook.com: colorado.edu does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTFQUjAzMDFNQjEyNDM7MjM6a1FvaHRDenZBOFZzSkxVYjc4ZTFuKy9i?= =?utf-8?B?Tm42VFlTcG4vdU45dlYzSE9MT0hEZUl0ZXJTQUkxRHZSSGlvRkpsaHJaR1Ji?= =?utf-8?B?d2dSVzRHZ3hlNkxlQ3BsMFhUb0twQUJBTjdXZStDbG4zWGZOWUFVT1FBajY4?= =?utf-8?B?NWFHZTNaeVVQemNjVDF4Tk1MaXJSVVhPM1MvYWRpU2ttSXR4aDI2SDRhTkl2?= =?utf-8?B?KzZISEY1RURmazV0SFF6cWQ3Q0U5UTk2dXZ3cndNTXdGZE9DUXVGbHU0QjFw?= =?utf-8?B?MjhkWjVPZ0dpanJHRElLZGZEc0ZQbHRsYUM3eHhEbEUraG84WlBmdTE0Tm1X?= =?utf-8?B?ejI1YnVvRW5aUHBOVXRYWU0yY1NMY2NVUlk4Zk5ibFJmYzNiUExyL3RVYUx1?= =?utf-8?B?U1N0QVhmTkFlN3ZseEI3aGtLNEhzbUpzYWVuWHJVc0dlT1F5L2JkMWEwUTk3?= =?utf-8?B?S3ppNXo2cm9KNThVcEwwQldxMnl3cUVJUyt0TkxoeElyTitEdUhLYlBhUmNN?= =?utf-8?B?VlovTSt2blh2Ri9NMFFrMG40ZmUvcmhvT0cwQXdDMkJWYXBTY3J0VDJScDQz?= =?utf-8?B?WlBYV05NRlFPL0NBWWljSXYwQUMzSkRra01GcFV0L3g1ZEUvM2FpYkl0RUNH?= =?utf-8?B?N000LzZoVUx1ajdtVjlYVjVjYStiais4c1VJSUhWREc0UzF6Y2s1aURjZzd4?= =?utf-8?B?STErWWFGT1BLMVJCQXlGY0ZhSmRINmVTcWpwUFhnaXRZTTF1dFFWMEMzMVVn?= =?utf-8?B?UjliNWswMkZrdkVNQnhlYzNBTTFYaE1HQi9aUUJ5MUxweHBJTEVRN250RUNB?= =?utf-8?B?b2lRTXBwSnB2Rm43WGRmbTdDdGY1cXJ3cWtKRXRiQmNDRnBLbHl4bnk2K3hS?= =?utf-8?B?UXBncU1XSml5Y0VkcGl2cGwvVGViUExBS1UyWjhPSUU5czdOVklkcUFzcFVT?= =?utf-8?B?ajFJR2x0Z3pQM0M5cXlmS25aMURLcnJybHhTMU5vc1NiNWVkd05MQkx4WHFn?= =?utf-8?B?SElqT1c5OWIybkpyUGRCcWNGM1MrcCtjb3NPZVprYXFGR1FqVmpzZ1ExYlky?= =?utf-8?B?ZkZpVnM0dlp5eW83MUNKOGJhQVdQVE5Kdm94MjJ5QTVrZWxFOVlQaE5PZC81?= =?utf-8?B?TGZiM0JWTWJZY2RkNFY4aGUwM1RTTmlTSFN2bEduU0JlT0Z0MGRINWphN2Q0?= =?utf-8?B?L0RYb2lzb0s0bnM2UUZNd3lLbEQrZHVpQlpETEpxek1sZ0xJcCtKVUVoT0NC?= =?utf-8?B?SXkzcHFDWlJCWlh5a3RMSnVwa0hjZGJkUjR6b251eWFkbWhCczEzR0VNRmds?= =?utf-8?B?SXp2b3lLYnhrTStqL1ErT3pLcURlYWU3NnNmU3d4TmFUNmorZU1JY1hpelpi?= =?utf-8?B?RExtZFNQek9UQUJBMWJTSnhQTmw4dS9RRTFHem53aVk0L040K01sVGg0QjlV?= =?utf-8?B?Y2g3bGxBUHRqNlU2UUNURnRpdUw1WXBaTDBFREVveWd1RjJ3R2ZNRCtVZUhC?= =?utf-8?B?SmJTSElrT2NOaUlxcmduTkhGVjdhdWhNZHo2WENwRHRIRVY1czFrRzRrd3I4?= =?utf-8?B?dm9vS0crS01xM1ViTkdtbE9PS0QxaXljRHRpUFpWVHNOU0lSZlJkS3dDWG51?= =?utf-8?B?SjBZd1c0MVk2cWJmMlpDbldneGQ2aU4wTm5SbHZLQjE2ejFVQTFzT0ZJajM0?= =?utf-8?B?OVg3MUluNzd3V0xqUEVTS0lYcUZjd2RLU0FtVjNvMVlxU0lmbHFLLy95SDZD?= =?utf-8?B?VXpaUmszdnBRQ0hVUGZSQkRRNEp1ZGk1UDR1Uyt5MEFPNGJ3WWhxUy93VVc4?= =?utf-8?B?dExoYlBZRC81WkswLysveTNtOE1ubGNhcWJKck50Mkh0UkN3YXBZSGQwNFZx?= =?utf-8?Q?Zk4k31W5gF3xWUOhUUdzKK2A/ljTc5e7eO?= X-Microsoft-Antispam-Message-Info: A/YMaxE6IyROyyc6Oc14rBYNjpqg1zy5g+U0guST1NnXVbh8SF5QYbT2K72eI220yoPzRc3/KqzrdpEPfrvoLOiGShNIChcrW5PmSpQqnTdQkw/CJ6UpUqmgFPJMj58uWAtrzw6HmhegI8LFwqI/myLUuzbSC6NhNQNRoACl6miQlMG0NZ4SRNsp0DXy8uAx X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1243;6:+bKDt2JXxvh/FCmLKtPUjqk9dPGPFtWRiDh3eY5mv6Zrm1GTDVVAyWLXynbjxTJLCUnpgLa1AZmvTaDpsPW70DqtLmutFIdjNdCdghg5IeH/BRg1XiO6Kq5RBWHxsdfiPQgNmawcJaolSryOp68DsJZIQNfGn3BWfGqiLx7Z4emfKwNFtemw4w0Tp9GbDCK3TRIWbf1mHYBopoyECvkUiawPcakroqCuZbSL/Vau2VslCNhcPZPD/CpFvD12AW5Sv7sjmzKwu4oRmYQoyOIJ9ZacFWTuecaPoeG5nzCU/YXth6gpPcgwQVfxuvUuEw8PYpId5QdPe3ZuCyN8kH2aTtuX8qghngi6lWAQmRlIHy/tzfZoEGu8w2R5Gbv5PNhydXte8TWqhGFTIG3yYn4HR1cRND94DfNHzOkcHz8x3BQVkbn1ca40GTxiTHRcj5H6Zf2mcGvzyuT3XBLoGys3ug==;5:zAKdATA7P5FsVoOl0PBcDmLyohPCR8iFByENeQ3KhrHZbkouO1wGuzKjEd+Ssviir1Bqaq3cWy9xOKxrqpNDYrDj2rrtnxIAYn7YNYPWKFO0OsqQMPrd92aPna8CoD2CeLmbUZdYPtCxOqfaS9330kenPAbuglT537pLVOcEOOk=;24:PMhL8Iov1cY8tkoAcKMo+4KifvzBintcL/kx6gAi/48+iFT342ql9Lzwc/B081CBDYFkDCCrE6SV8tzDIqLwfb4T0EOIz2MeYyTL3/IKBcg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1243;7:e5UoYACPkcgdyaj4U3hqE9IcPjojHRoNSTMis9TZZcAPPuKbBk1z9vxYwM9aYsr4ZKBfGi0SCiMImxjzCQXgalN3UwLNwEOX2JaAuUZ1eXmQwhsudwoVsmMGspSWjmNjsQj5/HIss3X1KHF3ffp1u++8CmsAOWDS0eSx6P4JW0PAVJ6SgX0ECZZUFRE817P20EaLpOns+OFfxOV6EN2OdwvmlCHFKWMJkYM34EEYrJenSVHnCkOahOSbymIm8Yzd X-MS-Office365-Filtering-Correlation-Id: ab6759f6-e0c3-466b-7281-08d5b06f7364 X-OriginatorOrg: colorado.edu X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 May 2018 20:58:26.3333 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ab6759f6-e0c3-466b-7281-08d5b06f7364 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3ded8b1b-070d-4629-82e4-c0b019f46057 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0301MB1243 X-SW-Source: 2018-q2/txt/msg00001.txt.bz2 Dear GSL users/developers, I have added a new module called gsl_movstat to GSL, which provides routines for moving window statistics (also called sliding window statistics, rolling statistics, running statistics, etc). Currently there is support for the following: moving mean, sum, min/max, variance/stddev, median, MAD, q-quantile range, Q_n, S_n I have also added some robust statistics routines to the gsl_stats area, including MAD, S_n, Q_n, Gastwirth and trimmed mean routines. Finally, I added a new module called gsl_filter, which currently contains a small number of common filtering routines. Currently, there is 1 linear filter (Gaussian smoothing) and 3 nonlinear filters (median, recursive median and impulse-rejection filters). I would like to eventually add other common filters (like Butterworth, Chebyshev) and possibly some routines to allow users to design their own filters with various criteria. This probably won't happen before the next release however. I have put everything into the master branch of the git with documentation. Any feedback/suggestions are welcome. Thanks, Patrick