Commit Graph
100 Commits
Author SHA1 Message Date
Wirawan Purwanto 64691c0425 * Change to new way to obtain the 'C' fitting parameters. 2015-05-28 17:21:24 -04:00
Wirawan Purwanto 78c638a371 * Bug fixes and documentation update. 2015-05-28 17:20:34 -04:00
Wirawan Purwanto 56b5d9ed05 * Minor bug fixes. 2015-05-28 17:17:06 -04:00
Wirawan Purwanto 39dddbd51d * Added module: wpylib.math.fitting.stochastic.
NOTE: Only imported verbatimly from Cr2_analysis_cbs.py CVS rev 1.143.
2015-05-28 12:04:54 -04:00
Wirawan Purwanto 1a537af020 * Dialect correction: "x == None" -> "x is None". 2015-05-22 23:59:01 -04:00
Wirawan Purwanto e46fcec698 * Imported more recent function fitting facility from Cr2 project. 2015-05-21 11:34:03 -04:00
Wirawan Purwanto e37110b08b * Added more support for legacy 'rannyi' RNG from our Fortran codes,
including one from normal gaussian PDF.
2015-05-21 11:30:19 -04:00
Wirawan Purwanto 82a55b940a * wpylib.math.fitting: Imported fit_func_base from Cr2 project.
* Added documentation on fitting methods.
2015-05-20 11:47:38 -04:00
Wirawan Purwanto 4111dc2da7 * Moved Poly_base & friends to wpylib.math.fitting.funcs_poly. 2015-05-20 10:35:48 -04:00
Wirawan Purwanto 773177d2b0 * Added tester for array functions. 2015-05-20 09:51:06 -04:00
Wirawan Purwanto 32b3580687 * Added array_tools.array_vstack. 2015-05-20 09:50:38 -04:00
Wirawan Purwanto f9cdb33e32 * Added "LDC" layout (C row-major, lower diagonal storage).
* Added reference mapping generator (and sample output for 5x5)
  for each layout.
2015-05-14 16:07:16 -04:00
Wirawan Purwanto 17c701edee * matrix_str: Added support for complex array. 2015-04-17 17:45:05 -04:00
Wirawan Purwanto bec94cb8c0 * Documentation update. 2015-04-03 16:09:37 -04:00
Wirawan Purwanto b4883c4ca9 * Added shortcut to modified Gram Schmidt (modgs) -> wpylib.math.linalg.modgs. 2015-04-03 16:08:53 -04:00
Wirawan Purwanto 10047b26f9 * Module wpylib.math.linalg.gram_schmidt to orthonormalize a set of
columns vectors.
2015-04-01 15:46:48 -04:00
Wirawan Purwanto a3add89f5a * Added simple tools to read/write values to/from a HDF5 file. 2015-04-01 12:56:19 -04:00
Wirawan Purwanto b7f1cbaa5c * In tmpdir cleanup: Replaced stray debug printout with a warning msg if
tmpdir is not to be cleaned up.
2015-03-18 14:12:10 -04:00
Wirawan Purwanto 7568f5874e * Added a tool to create bound instance method with weak ref to the instance. 2015-03-16 18:07:18 -04:00
Wirawan Purwanto 1c5ec91b64 * Added method idatetime.join_values() . 2015-03-12 23:47:48 -04:00
Wirawan Purwanto 86e4e8fd51 * Bugfixes for tmpdir. 2015-02-10 17:39:03 -05:00
Wirawan Purwanto c9fdeee86b Merge remote-tracking branch 'origin/master' 2014-12-09 23:56:45 -05:00
Wirawan Purwanto 9a4f4d782b * Added first implementation (and test harness) for idatetime
datatype.
2014-10-16 15:56:16 -04:00
Wirawan Purwanto 10ee70427c * Upgraded utime_to_iso function to include more formatting. 2014-10-16 14:26:19 -04:00
Wirawan Purwanto 4f82c80af9 * Documentation & test update. 2014-10-15 10:12:49 -04:00
Wirawan Purwanto d841380864 * Added class wpylib.math.stats.avg.weight_stats for weighted statistical
analysis.
2014-09-04 17:44:50 -04:00
Wirawan Purwanto 5c177065dd * Added block_timer class for use in python 2.5+ "with ..." construct. 2014-08-27 22:24:59 -04:00
Wirawan Purwanto 3e0d86fdfb * Added array_hstack function. 2014-08-27 22:23:20 -04:00
Wirawan Purwanto 7d5bf9e7f8 * Added simple text table reader. 2014-08-27 22:22:59 -04:00
Wirawan Purwanto 22d5b6f888 * Added class logged_runner for logging external programs called from
a python script.
2014-08-19 11:09:46 -04:00
Wirawan Purwanto 3ee3dd5c4b * Module wpylib.file.tmpdir: defines a script-wide temporary directory. 2014-08-19 11:07:39 -04:00
Wirawan Purwanto d7a65386a3 * Fortran binary file: Added bulk_read_array1 method for quick reading of
array of (uniform-type) Fortran records.
2014-08-19 11:06:08 -04:00
Wirawan Purwanto 02a0222f34 * wpylib.file.file_utils: added is_readable/is_writable test functions. 2014-08-02 22:10:58 -04:00
Wirawan Purwanto f3f47f658e * Added tester for wpylib.iofmt submodules and objects: first test is for
text_output "with" invocation.
2014-08-02 21:34:12 -04:00
Wirawan Purwanto 025d410ec4 * Moved test modules to a separate TESTS subdirectory to avoid confusion. 2014-08-02 21:33:35 -04:00
Wirawan Purwanto 723f1a4fc1 * Added __enter__/__exit__ method for use with python 2.5's "with" statement. 2014-08-02 21:32:34 -04:00
Wirawan Purwanto fd47842b73 * Documentation update. 2014-08-02 21:17:54 -04:00
Wirawan Purwanto b0c524e5a8 * Added more test harness (test 3) for dict_update_nested(). 2014-06-05 12:47:44 -04:00
Wirawan Purwanto 6c8c2d8381 * Added: dict_update_nested() for nested dict member copy-update into
the destination.
* Added most basic test harnesses for that routine.
2014-06-05 11:30:47 -04:00
Wirawan Purwanto 17b9ed5585 * For auto param _create_() function: added _skipframes_ option, if needed.
* Added support for __flatten_dict__() function.
2014-05-30 18:22:22 -04:00
Wirawan Purwanto 1eaeb3e68c * Added function: dict_defval and dict_defvals. 2014-05-29 13:55:16 -04:00
Wirawan Purwanto 597398a34b * Added missing function (rms). 2014-05-29 13:55:05 -04:00
Wirawan Purwanto bb3db2667a * Module array_stat: Added study_sparsity() and print_histogram(),
adapted from V2b_inspect research module.
2014-04-17 16:42:36 -04:00
Wirawan Purwanto aaa06dc531 * Added rdiff() function to calculate element-wise relative difference of
two arrays.
2014-04-17 13:33:59 -04:00
Wirawan Purwanto a0d8ed87a3 * New module: wpylib.array_tools for convenient array manipulations. 2014-04-07 12:27:08 -04:00
Wirawan Purwanto 8da8937009 * Added function str_indent for completeness. 2014-04-07 12:26:09 -04:00
Wirawan Purwanto a347ae6d47 * New module: wpylib.math.stats.array_stats, for studying statistics of
an array (e.g., sparsity, difference, etc).
2014-04-07 12:25:33 -04:00
Wirawan Purwanto 3b0a8af1aa * Added MathWarning for mathematics-related warning messages. 2014-03-28 14:29:10 -04:00
Wirawan Purwanto 04e78ade1d * Added extra debugging statements. 2014-02-24 16:06:40 -05:00
Wirawan Purwanto 1e56bb95eb * wpylib.file.file_utils: added path_prep and mkdir_p. 2014-02-24 16:06:09 -05:00
Wirawan Purwanto b043fb3cdf * fit_func: Added support for lmfit-based minimization.
Tested minimally in the Cr2_analysis_cbs.py workbench (routine:
  Test_MC_FPTZ_20140206).
2014-02-07 18:25:22 -05:00
Wirawan Purwanto 363999badf * Added str_lstrip, str_rstrip functions for a Bourne-like substring
stripping.
2014-01-31 10:07:05 -05:00
Wirawan Purwanto 4fbf85d503 * Added function_name to obtain the name given to a function. 2014-01-31 10:06:33 -05:00
Wirawan Purwanto 839948a8da * Moved the following functions from wpylib.shell_tools to
wpylib.file.file_utils since they are not directly related to shell:

  - file_exists_nonempty
  - is_executable_file
  - dirname2
  - relpath
  - path_split_all
  - list_dir_entries

  These are new API functions, so hopefully their changes would not
  affect many existing scripts.

* Added support for xz-compressed tar in untar() routine. Untested.

* Documentation updates.
2014-01-16 12:31:57 -05:00
Wirawan Purwanto 0c352b44f7 * Added function scan_directories() -- initial version for scanning
recursively all through directories (no symlink following), to collect
  all subdirectories that satisfy the test criteria defined in the
  testdir() function argument.
2014-01-16 11:58:51 -05:00
Wirawan Purwanto d93fb5b7c2 * Added support for .xz file extension.
* Using backported lzma module (on python <= 3.2) to eliminate subprocess,
  if possible.
2014-01-15 16:39:00 -05:00
Wirawan Purwanto 5ce6e86b43 * Added functions: is_executable_file() and path_split_all(). 2014-01-15 16:37:29 -05:00
Wirawan Purwanto a33ad3c766 * Introduced a much faster way (and simpler) to compute jackknife averages. 2013-12-11 16:25:29 -05:00
Wirawan Purwanto 4e2b2c66c2 * Added wpylib.math.stats.jackknife1, initial implementation of delete-one
jackknife resampling method.

  This module also contains a hack for weighted average
  (warning: the theory is not established yet, at least I have not seen
  it).
2013-12-11 00:15:24 -05:00
Wirawan Purwanto f0ba6f4068 * wpylib.math: Added complex_polar(). 2013-12-09 17:27:44 -05:00
Wirawan Purwanto 093b15085b * utime_to_iso(): Let the local current time be the default input data. 2013-10-23 13:15:02 -04:00
Wirawan Purwanto 0675c6c599 * Added wpylib.datetime.utime_to_iso() function. 2013-10-23 13:04:48 -04:00
Wirawan Purwanto 42babbe767 * Add "global variable" statement. 2013-10-23 13:03:49 -04:00
Wirawan Purwanto 869aa91109 * fit_func(): Allow non-(numpy.ndarray) args for x, y, dy.
* Documentation update.
2013-10-17 13:49:50 -04:00
Wirawan Purwanto fb6631f756 * Use is_iterable to detect iterable specs argument. 2013-10-17 13:49:17 -04:00
Wirawan Purwanto 9a5d2dfa9f * text_tools: Added str_fmt_heading() function for formatting table heading
a la printf.
2013-10-17 13:48:07 -04:00
Wirawan Purwanto 579be3e18a * errorbar: Added "lazy" string evaluation to speed up errorbar algebra. 2013-10-02 15:32:46 -04:00
Wirawan Purwanto ed1242dc66 * Added "lazy string printout" which will speed up errorbar algebra--i.e.
we only need to evaluate the string representation when
  the string printout isrequired.
2013-10-02 14:30:55 -04:00
Wirawan Purwanto c8aad2e2f8 * Added facility for smoothed approximating spline instead of "exact"
interpolation.
2013-09-17 18:00:08 -04:00
Wirawan Purwanto 06fa307e84 * spline_2d: Use public scipy API functions. 2013-09-17 17:18:29 -04:00
Wirawan Purwanto 564d1f4364 * wpylib.math.fitting.fit_func: Added support for weight (or y uncertainty).
* For `leastsq' fit method, also introduced 'xerr' output (in outfmt=0)
  as the error estimate of the fitted parameters.
2013-08-19 15:43:49 -04:00
Wirawan Purwanto 37b0939671 * Documentation clarification. 2013-08-19 15:43:19 -04:00
Wirawan Purwanto 1421cf3bc5 * wpylib.math.fitting.fit_func: Allow Guess argument to override
machine-generated guess.
* Add 'funcalls' data key to the leastsq complete output to conform to the
  fmin-style output.
2013-08-19 10:50:54 -04:00
Wirawan Purwanto 2907b2ca77 * Set lcg48 default seed_index for user's reference 2013-08-19 10:11:09 -04:00
Wirawan Purwanto 42fdcc5253 * Added new module wpylib.math.random and its submodule (rng_lcg48).
The LCG48 generator is primarily for testing algorithms involving random
  numbers.
2013-08-14 15:29:26 -04:00
Wirawan Purwanto e485cabbe8 * wpylib.math.fitting.fit_func: Added optional Funct_hook argument to
be called (for debugging purposes) every time "the" Funct function
  is called.
2013-08-13 01:05:38 -04:00
Wirawan Purwanto cdad14e034 * Added BFGS minimization. 2013-08-09 16:51:38 -04:00
Wirawan Purwanto 2e21e2857a * Added function relpath() to compute relative path from one to another
path.
2013-06-25 17:01:26 -04:00
Wirawan Purwanto 2daca4af6e * tee_output: Allow None to be given in the `files' argument, which stands
for a null file.
2013-04-19 16:46:09 -04:00
Wirawan Purwanto 80961ed2bd * Added test7 and test8 for param_flat module.
- test7 tests active parameters which can work OK if the search dicts are
    flatten.
  - test8 tests the _flatten_() method.
2013-04-17 17:26:48 -04:00
Wirawan Purwanto b326937d80 * Parameters: Now correctly implements _flatten_() method and flag.
- The _flatten_() method should recursively flatten the parameter
    search space into a single dict.
  - The _flatten_ flag will flatten the input dicts and keyword-based
    parameter (in the __init__() method only) in the expected order of
    priority (where the first found keyword is the most overriding one)
    into a single search dict.
2013-04-16 14:06:26 -04:00
Wirawan Purwanto 8d32c2c067 * Parameters: if _flatten_ is enabled, must flatten in reverse order to
give the firstly mentioned dict the priority.
2013-04-16 11:55:18 -04:00
Wirawan Purwanto 254aaca622 * Added tester for active Parameters value. 2013-04-11 14:38:04 -04:00
Wirawan Purwanto 0f58bc0f03 * params_flat.py: Added ActiveReadValue magic class to enable `active',
or executable, parameter, which will be executed upon `reading' such a
  value.
2013-04-11 14:36:52 -04:00
Wirawan Purwanto fe9fa59e76 * params_flat.py: Documentation and note updates. 2013-04-11 14:06:14 -04:00
Wirawan Purwanto f7c9ad7d34 * Added functions time_diff() and shift_time() for UNIX time manipulation. 2013-03-05 23:44:31 -05:00
Wirawan Purwanto 8f513ff5b4 * Added tests for Parameters._all_keys(). 2013-03-04 13:59:26 -05:00
Wirawan Purwanto 6709679af9 * Parameters: Added _all_keys_() and _flatten_() methods.
Warning: These are expensive, and not for general use.
2013-03-04 13:58:32 -05:00
Wirawan Purwanto 5a84a98b84 * Added tests for _append_() and _prepend_() methods. 2013-03-04 13:42:22 -05:00
Wirawan Purwanto f04531a601 * Parameters: Added _append_() and _prepend_() methods. 2013-03-04 13:37:48 -05:00
Wirawan Purwanto 099f3e7e06 * Module wpylib.db.indexing_float: utility for floating-point (FP)-based
indexing, allowing tolerances to account for imprecise nature of FP
  numbers.

  Initial implementation, rather complicated.
  A simple rounding-based implementation can be put in later.

  Includes initial test.
2013-03-03 09:15:43 -05:00
Wirawan Purwanto 4fb16c56b2 * Documentation update. 2013-02-28 14:01:18 -05:00
Wirawan Purwanto 9de8407dd9 * Added Test_3(). 2012-10-15 17:25:06 -04:00
Wirawan Purwanto a0eb82ed2b * Mute debug printing. 2012-10-15 16:59:35 -04:00
Wirawan Purwanto 5b213b0ee7 * Little syntax optimization. 2012-10-15 16:45:37 -04:00
Wirawan Purwanto 414643ecde * Added testcase wpylib.math.fitting.linear.Test_2() against numpy.polyfit(). 2012-10-15 16:35:12 -04:00
Wirawan Purwanto cb8124f699 * Provide uncertainty of both a and b fit parameters. 2012-10-15 16:12:37 -04:00
Wirawan Purwanto 87763d6e57 * wpylib.math.fitting.linear: for linear fit methods.
First method: linregr2d_SZ() from Shiwei's email in 2006.
2012-10-15 16:02:41 -04:00
Wirawan Purwanto 908a4e0682 * Rebase fit_result on result_base. 2012-10-15 16:01:46 -04:00
Wirawan Purwanto 348c204699 * Change wpylib.math.fitting module from a file into a subdirectory. 2012-10-15 15:16:02 -04:00