semvec/pypi-packages huggingface dataset:
hn2016-falwa 0.7.3
This python package has been renamed from `hn2016_falwa` to `falwa` since version v1.0.0.
License: MIT
Requires Python: >=3


    Important: this python package has been renamed from `hn2016_falwa` to `falwa` since version v1.0.0.
    
    This python package contains modules to compute the finite-amplitude
    local wave activity (FALWA) and reference state (U_ref) in the following papers:
    Huang and Nakamura (2016, JAS): http://dx.doi.org/10.1175/JAS-D-15-0194.1
    Huang and Nakamura (2017, GRL): http://onlinelibrary.wiley.com/doi/10.1002/2017GL073760/full
    Nakamura and Huang (2018, Science): https://doi.org/10.1126/science.aat0721
    Neal et al (2022, GRL): https://agupubs.onlinelibrary.wiley.com/doi/full/10.1029/2021GL097699

    The current version of the library handles calculation of FALWA in a spherical barotropic model and QGPV fields on 
    isobaric surfaces.

    The functions in this library can compute the tracer equivalent-latitude relationship
    proposed in Nakamura (1996) (Also, see Allen and Nakamura (2003)) and the (zonal mean)
    finite-amplitude wave activity in spherical geometry as in Nakamura and Solomon (2010).

    Links:    
    - Source code: http://github.com/csyhuang/hn2016_falwa/
dorfperfekt 0.2.3
Tile placement suggestions for the game Dorfromantik.
License: MIT
Requires Python: >=3.9,<3.12

# Dorfperfekt

Tile placement suggestions for the game Dorfromantik. With an emphasis on perfect tile placement, this software tool enables the player to play indefinitely (and achieve a massive score while doing so).

![demo dorfperfekt](https://github.com/amosborne/dorfperfekt/raw/main/demo_dorfperfekt.png)
![demo dorfromantik map](https://github.com/amosborne/dorfperfekt/raw/main/demo_dorfromantik_map.png)
![demo dorfromantik score](https://github.com/amosborne/dorfperfekt/raw/main/demo_dorfromantik_score.png)

## How It Works

The player inputs a six-character text string representing the next tile to be placed. Each valid placement is then evaluated by the solver according to the following (in order of precedence):

1. How many tiles would be ruined by this placement? Less is better.
2. Of the tiles encountered so far, how many would alternatively fit perfectly at this position? Less is better.
3. Assuming this placement is made, consider each adjacent open position. Of the tiles encountered so far, how many would fit perfectly at that adjacent position? Take the minimum of all adjacent open positions. More is better.

The latter two computations will take a significant amount of time as the game progresses and more unique tiles are encountered. A threshold is set by the user so that the solver can be instructed to ignore rarer tiles.

## Using the Application

Dorfperfekt displays an overall map of the board. Dark gray tiles are non-ruined placements and light gray tiles are ruined placements. After entering a tile definition string and pressing the solve button, the progress bar will increment and pressing the refresh button will overlay a heatmap of the possible moves onto the board. Green is better, red is worse, and white is neutral (or not yet evaluated).

Positions on the map can be clicked on. By clicking on a proposed position for your next placement, a view of the local terrain is generated. The tile to be placed is given a proposed best rotation but the user may use the rotate button to select an alternate rotation.

Existing tiles may also be clicked on such that they may be deleted or set as the origin to recenter the map of the board.

## Tile Definitions

A tile is defined by a six-character text string where each character represents the edge terrains in **clockwise** order. If all edges of the tile are the same a single character may be used instead. Tile characters are deliberately selected to all be accessible from the left hand.

- Grass, "g"
- Forest, "f"
- Ranch, "r" (ie. wheat/lavender fields)
- Dwelling, "d" (ie. houses)
- Water, "w" (ie. rivers)
- Station, "s"
- Train, "t"
- Coast, "c" (ie. lakes)

## Installation

From the command line, install with `pip install dorfperfekt`. The application can then be run from the command line with `dorfperfekt`.

## Development

Setting up the software development environment is easy.

```bash
poetry install
poetry run pre-commit install
```