foamify


Namefoamify JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://github.com/jackericson98/foamify
SummaryAn interactive simulated foam generator for creating 3-dimensional random ensembles of spheres
upload_time2025-08-05 20:22:03
maintainerNone
docs_urlNone
authorJohn Ericson
requires_python>=3.8
licenseNone
keywords foam simulation 3d spheres physics visualization
VCS
bugtrack_url
requirements numpy scipy pandas matplotlib future numba scikit-learn joblib plotly
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # foamify

An interactive simulated foam generator for creating 3-dimensional random ensembles of spheres.

## Overview

`foamify` is a Python package designed to create 3-dimensional random ensembles of spheres, mimicking the bubbles in foam based on user-defined parameters. This tool is particularly useful for researchers and scientists working in materials science, physics, and engineering applications.

## Features

- **3D Sphere Generation**: Create random ensembles of spheres in 3D space
- **Customizable Parameters**: Adjust size, distribution, and interaction of spheres
- **Interactive GUI**: User-friendly graphical interface for parameter configuration
- **Export Capabilities**: Save generated foam structures for further analysis
- **Visualization Tools**: Built-in plotting and visualization features
- **Machine Learning Integration**: Advanced density adjustment algorithms

## Installation

### From PyPI (Recommended)

```bash
pip install foamify
```

### From Source

1. Clone the repository:
   ```bash
   git clone https://github.com/jackericson98/foamify.git
   cd foamify
   ```

2. Install in development mode:
   ```bash
   pip install -e .
   ```

## Quick Start

### Command Line Interface

After installation, run the interactive GUI:

```bash
foamify
```

Or run as a Python module:

```bash
python -m foam_gen
```

### Python API

```python
import foam_gen

# Use the package programmatically
# (API documentation coming soon)
```

## Usage

1. **Launch the GUI**: Run `foamify` from your terminal
2. **Configure Parameters**: Set your desired foam parameters through the interface
3. **Generate Foam**: Click "Create Foam" to generate your 3D sphere ensemble
4. **Export Results**: Save your generated foam for further analysis

## Parameters

The foam generation can be customized with various parameters including:
- Sphere size distributions
- Density settings
- Spatial arrangement
- Interaction parameters

## Dependencies

- Python >= 3.8
- numpy >= 1.21.0
- scipy >= 1.7.0
- matplotlib >= 3.5.0
- numba >= 0.56.0
- pandas >= 1.3.0
- scikit-learn >= 1.0.0
- tqdm >= 4.62.0

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Author

**John Ericson** - Georgia State University (2025)

- Email: jackericson98@gmail.com
- GitHub: [@jackericson98](https://github.com/jackericson98)

## Citation

If you use this software in your research, please cite:

```bibtex
@software{foamify,
  title={foamify: Interactive 3D Foam Generator},
  author={John Ericson},
  year={2025},
  url={https://github.com/jackericson98/foamify}
}
```

## Support

- **Issues**: [GitHub Issues](https://github.com/jackericson98/foamify/issues)
- **Documentation**: [GitHub README](https://github.com/jackericson98/foamify#readme)

   

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/jackericson98/foamify",
    "name": "foamify",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "foam, simulation, 3d, spheres, physics, visualization",
    "author": "John Ericson",
    "author_email": "John Ericson <jackericson98@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/c2/92/b5bef2c84934b616b446ec51f55aa3244321a2f2bf63fc747ad7dd9e77ff/foamify-0.1.0.tar.gz",
    "platform": null,
    "description": "# foamify\r\n\r\nAn interactive simulated foam generator for creating 3-dimensional random ensembles of spheres.\r\n\r\n## Overview\r\n\r\n`foamify` is a Python package designed to create 3-dimensional random ensembles of spheres, mimicking the bubbles in foam based on user-defined parameters. This tool is particularly useful for researchers and scientists working in materials science, physics, and engineering applications.\r\n\r\n## Features\r\n\r\n- **3D Sphere Generation**: Create random ensembles of spheres in 3D space\r\n- **Customizable Parameters**: Adjust size, distribution, and interaction of spheres\r\n- **Interactive GUI**: User-friendly graphical interface for parameter configuration\r\n- **Export Capabilities**: Save generated foam structures for further analysis\r\n- **Visualization Tools**: Built-in plotting and visualization features\r\n- **Machine Learning Integration**: Advanced density adjustment algorithms\r\n\r\n## Installation\r\n\r\n### From PyPI (Recommended)\r\n\r\n```bash\r\npip install foamify\r\n```\r\n\r\n### From Source\r\n\r\n1. Clone the repository:\r\n   ```bash\r\n   git clone https://github.com/jackericson98/foamify.git\r\n   cd foamify\r\n   ```\r\n\r\n2. Install in development mode:\r\n   ```bash\r\n   pip install -e .\r\n   ```\r\n\r\n## Quick Start\r\n\r\n### Command Line Interface\r\n\r\nAfter installation, run the interactive GUI:\r\n\r\n```bash\r\nfoamify\r\n```\r\n\r\nOr run as a Python module:\r\n\r\n```bash\r\npython -m foam_gen\r\n```\r\n\r\n### Python API\r\n\r\n```python\r\nimport foam_gen\r\n\r\n# Use the package programmatically\r\n# (API documentation coming soon)\r\n```\r\n\r\n## Usage\r\n\r\n1. **Launch the GUI**: Run `foamify` from your terminal\r\n2. **Configure Parameters**: Set your desired foam parameters through the interface\r\n3. **Generate Foam**: Click \"Create Foam\" to generate your 3D sphere ensemble\r\n4. **Export Results**: Save your generated foam for further analysis\r\n\r\n## Parameters\r\n\r\nThe foam generation can be customized with various parameters including:\r\n- Sphere size distributions\r\n- Density settings\r\n- Spatial arrangement\r\n- Interaction parameters\r\n\r\n## Dependencies\r\n\r\n- Python >= 3.8\r\n- numpy >= 1.21.0\r\n- scipy >= 1.7.0\r\n- matplotlib >= 3.5.0\r\n- numba >= 0.56.0\r\n- pandas >= 1.3.0\r\n- scikit-learn >= 1.0.0\r\n- tqdm >= 4.62.0\r\n\r\n## Contributing\r\n\r\nContributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n## Author\r\n\r\n**John Ericson** - Georgia State University (2025)\r\n\r\n- Email: jackericson98@gmail.com\r\n- GitHub: [@jackericson98](https://github.com/jackericson98)\r\n\r\n## Citation\r\n\r\nIf you use this software in your research, please cite:\r\n\r\n```bibtex\r\n@software{foamify,\r\n  title={foamify: Interactive 3D Foam Generator},\r\n  author={John Ericson},\r\n  year={2025},\r\n  url={https://github.com/jackericson98/foamify}\r\n}\r\n```\r\n\r\n## Support\r\n\r\n- **Issues**: [GitHub Issues](https://github.com/jackericson98/foamify/issues)\r\n- **Documentation**: [GitHub README](https://github.com/jackericson98/foamify#readme)\r\n\r\n   \r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "An interactive simulated foam generator for creating 3-dimensional random ensembles of spheres",
    "version": "0.1.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/jackericson98/foamify/issues",
        "Documentation": "https://github.com/jackericson98/foamify#readme",
        "Homepage": "https://github.com/jackericson98/foamify",
        "Repository": "https://github.com/jackericson98/foamify"
    },
    "split_keywords": [
        "foam",
        " simulation",
        " 3d",
        " spheres",
        " physics",
        " visualization"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "753007ddc2c51ae36a34907842a23f8ba8a798cda3875da179d5e7d586814d11",
                "md5": "50bc08b74028b627dbbf05cd66afca03",
                "sha256": "1496130742729780085bd3045e016d8c7fdd14d3a76bb53ccba0044a2e1e6290"
            },
            "downloads": -1,
            "filename": "foamify-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "50bc08b74028b627dbbf05cd66afca03",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 38928,
            "upload_time": "2025-08-05T20:22:01",
            "upload_time_iso_8601": "2025-08-05T20:22:01.699210Z",
            "url": "https://files.pythonhosted.org/packages/75/30/07ddc2c51ae36a34907842a23f8ba8a798cda3875da179d5e7d586814d11/foamify-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c292b5bef2c84934b616b446ec51f55aa3244321a2f2bf63fc747ad7dd9e77ff",
                "md5": "da677b8b015edbb7bb918177f4fcd60b",
                "sha256": "9049dd8a4efcb7ce6ad5c2e67ac6fc3dfdc8b4f81e4ad5e454056f5088e7dcec"
            },
            "downloads": -1,
            "filename": "foamify-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "da677b8b015edbb7bb918177f4fcd60b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 32913,
            "upload_time": "2025-08-05T20:22:03",
            "upload_time_iso_8601": "2025-08-05T20:22:03.046625Z",
            "url": "https://files.pythonhosted.org/packages/c2/92/b5bef2c84934b616b446ec51f55aa3244321a2f2bf63fc747ad7dd9e77ff/foamify-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-05 20:22:03",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jackericson98",
    "github_project": "foamify",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "numpy",
            "specs": [
                [
                    "~=",
                    "1.26.4"
                ]
            ]
        },
        {
            "name": "scipy",
            "specs": [
                [
                    "~=",
                    "1.13.1"
                ]
            ]
        },
        {
            "name": "pandas",
            "specs": [
                [
                    "~=",
                    "2.2.2"
                ]
            ]
        },
        {
            "name": "matplotlib",
            "specs": [
                [
                    "~=",
                    "3.7.5"
                ]
            ]
        },
        {
            "name": "future",
            "specs": [
                [
                    "~=",
                    "0.18.3"
                ]
            ]
        },
        {
            "name": "numba",
            "specs": [
                [
                    "~=",
                    "0.60.0"
                ]
            ]
        },
        {
            "name": "scikit-learn",
            "specs": [
                [
                    "~=",
                    "1.5.2"
                ]
            ]
        },
        {
            "name": "joblib",
            "specs": [
                [
                    "~=",
                    "1.4.2"
                ]
            ]
        },
        {
            "name": "plotly",
            "specs": [
                [
                    "~=",
                    "5.22.0"
                ]
            ]
        }
    ],
    "lcname": "foamify"
}
        
Elapsed time: 2.11588s