semvec/pypi-packages huggingface dataset:
population-structure 1.0.1
Major changes in the the utils module. The f_to_m function previously used a numeric solver which oftenfailed due to constraining the solution with conservative migration constraints. Now, using the constraintsthe numerical solver adds the constraints as part of the equations to minimize, and it possible to runthe function without the conservative migration constraints.
Requires Python: >=3.7

# Population Structure Package
A package for performing transformation between fst, coalescence, and migration matrices.
The transformation between coalescence and migration is based on Wilkinson-Herbot's equations (2003).
The transformation between fst and coalescence is based on the Slatkin's equations (1991).
## Install package using pip
pip install population-structure
## Example usuage
```python
import population_structure.utils as psu
import numpy as np
m = np.array([[0, 1, 1], 
              [1, 0, 1], 
              [1, 1, 0]]) # A conservative migration matrix
t = psu.m_to_t(m) # The corresponding coalescence matrix according to W.H. (2003)
f = psu.m_to_f(m) # The corresponding fst matrix according to Slatkin (1991)
print(f"{t}\n{f}")
"""
prints:
[[3. 4. 4.]
 [4. 3. 4.]
 [4. 4. 3.]]
[[0.         0.14285714 0.14285714]
 [0.14285714 0.         0.14285714]
 [0.14285714 0.14285714 0.        ]]
"""
f = np.array([[0,0.1,0.2],
              [0.1,0,0.3],
              [0.2,0.3,0]]) # An fst matrix
psu.f_to_t(f) # Generates a possilbe corresponding coalescence matrix
psu.f_to_m(f) # Generate a possible corresponding migration matrix
```
rapidocr-mcp 0.4.0
RapidOCR MCP Server for OCR processing
Requires Python: >=3.13
Keywords: mcp, ocr, rapidocr

# RapidOCR MCP Server

A MCP server based on RapidOCR, providing an easy-to-use OCR interface.

## Usage

```bash
uvx run rapidocr-mcp
```

## Available Methods

* ocr_by_content
Perform OCR on an image content. Args: base64_data (str): The base64 encoded image content. Returns: List[TextContent]: A list of text content.

* ocr_by_path
Perform OCR on an image file. Args: path (str): The path to the image file. Returns: List[TextContent]: A list of text content.
u3606b-py 0.0.4
Control Keysight U3606B Multimeter through PyVISA
Requires Python: >=3.8

[![Build and Publish](https://github.com/leeebo/u3606b_py/actions/workflows/release_to_pypi.yml/badge.svg)](https://github.com/leeebo/u3606b_py/actions/workflows/release_to_pypi.yml) [![version](https://img.shields.io/pypi/v/u3606b_py)](https://pypi.python.org/pypi/u3606b_py) [![license](https://img.shields.io/pypi/l/u3606b_py)](https://pypi.python.org/pypi/u3606b_py) 

## u3606b Python driver (unofficial)

This is a Python driver for the u3606b multimeter. It is based on the official [U3606B Multimeter| DC Power Supply Programming Guide](https://www.keysight.com/us/en/assets/9018-03963/programming-guides/9018-03963.pdf) and PyVISA package. [PyVISA](https://pyvisa.readthedocs.io/projects/pyvisa-py/en/latest/) is a Python package that allows you to control measurement devices independently of the interface (GPIB, USB, Ethernet, etc.) by using a common API.

The driver is not complete, but it is a good starting point for anyone who wants to control the u3606b multimeter with Python.

The driver supports the following functions:

* Read voltage
* Read current
* Set voltage
* Set current
* Set output on/off
* Set limits
* Step output

## Pre-requisites

* Python 3.8 or higher (lower versions may work, but have not been tested)
* Windows: [NI-VISA](https://www.ni.com/zh-cn/support/downloads/drivers/download.ni-visa.html#494653) or [NI-488.2](https://www.ni.com/zh-cn/support/downloads/drivers/download.ni-488-2.html#305442) or [Keysight IO Library Suite](https://www.keysight.com/en/pd-1985909/io-libraries-suite/)
* Linux/MAC: please refer to [gpib-resources-gpib-instr](https://pyvisa.readthedocs.io/projects/pyvisa-py/en/latest/installation.html#gpib-resources-gpib-instr)

## Installation

```bash
pip install u3606b_py
```

## Example

```python
from u3606b_py.u3606b import U3606B

u3606b_dev = U3606B()
u3606b_dev._open()
u3606b_dev._reset()
u3606b_dev.sour_vol_rng(rng='8V')
u3606b_dev.sour(lvl='1.0V')
```