geodiff


Namegeodiff JSON
Version 0.9.4 PyPI version JSON
download
home_pageNone
SummaryDifferentiable geometry representations for shape parameterization and optimization.
upload_time2025-10-24 05:52:43
maintainerAtharva Aalok
docs_urlNone
authorAtharva Aalok
requires_python>=3.12.0
licenseNone
keywords differentiable-geometry shape-optimization pytorch machine-learning deep-learning geometric-deep-learning cfd design-optimization
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Differentiable geometry representations for shape parameterization and optimization.


## Project Plan
### Stage 1: Initial Setup
- [x] Add Github Actions workflow for Github Pages.
- [x] Create first cut User Docs using Jupyter Books and MyST markdown.
    - [x] What is this package for?
    - [x] Add .gitignore for MyST markdown.
- [x] Launch Github Discussions for the project.
    - [x] Create introductory dicussion post.
- [x] Add MIT License.
- [x] Update pyproject.toml.
    - [x] Maintainers, license, license-file, keywords, classifiers, project urls.
- [x] Add Github Actions workflow for Github Release and PyPI publishing.
- [x] Add CHANGELOG.md to maintain release details.
- [x] Create first tag and push it to initiate first release and publish.

### Stage 2: Implement Geometry Representations
- [x] Install necessary dependencies
    - [x] numpy, matplotlib and pytorch.
- [x] Implement loss functions.
    - [x] Start with Chamfer loss.
- [x] Hicks-Henne bump functions.
    - [x] Implement the Hicks-Henne class.
    - [x] Add visualization method.
    - [x] Add type hints and docstrings.
    - [x] Add test script.
    - [x] Add documentation.
    - [x] Merge with main branch.
    - [x] Create a tag and push it to create a release.
- [x] CST parameterization.
    - [x] Implement the CST class.
    - [x] Add visualization method.
    - [x] Add type hints and docstrings.
    - [x] Add test script.
    - [x] Add documentation.
    - [x] Merge with main branch.
    - [x] Create a tag and push it to create a release.
- [x] NICE normalizing flow parameterization.
    - [x] Implement the NICE class.
    - [x] Add visualization method.
    - [x] Add type hints and docstrings.
    - [x] Add test script.
    - [x] Add documentation.
    - [x] Merge with main branch.
    - [x] Create a tag and push it to create a release.
- [x] RealNVP normalizing flow parameterization.
    - [x] Implement the RealNVP class.
    - [x] Add visualization method.
    - [x] Add type hints and docstrings.
    - [x] Add test script.
    - [x] Add documentation.
    - [x] Merge with main branch.
    - [x] Create a tag and push it to create a release.
- [x] NIGnet parameterization.
    - [x] Implement the NIGnet class.
    - [x] Add visualization method.
    - [x] Add type hints and docstrings.
    - [x] Add test script.
    - [x] Add documentation.
    - [x] Merge with main branch.
    - [x] Create a tag and push it to create a release.
- [x] NeuralODE parameterization.
    - [x] Implement the NeuralODE class.
    - [x] Add visualization method.
    - [x] Add type hints and docstrings.
    - [x] Add test script.
    - [x] Add documentation.
    - [x] Merge with main branch.
    - [x] Create a tag and push it to create a release.
- [x] Make Pre-Aux net modular by defining it separately from the invertible networks.
    - [x] Make Pre-Aux net modular for NICE.
    - [x] Change test script for NICE.
    - [x] Make Pre-Aux net modular for all representations.
    - [x] Change test scripts for all representations.
    - [x] Update documentation for all representations.
        - [x] Fix random seed for replicating results.
    - [x] Merge with main branch.
    - [x] Create a tag and push it to create a release.


### Stage 3: Implement Latent Vectors for Geometry Representation
- [x] Add latent code functionality to Pre-Aux nets.
- [x] Add latent code functionality to NICE.
- [x] Add test script for training with latent code using autodecoder framework.
    - [x] Use NICE for the test script.
    - [x] Fit two latent codes to fit two differently rotated squares.
- [x] Add latent code functionality to all representations.
- [x] Merge with main branch.
- [x] Create a tag and push it to create a release.


### Stage 4: Improve Sampling of Points on the Closed Transform
- [x] Sample points in T [0, 1]^d using Farthest Point Sampling for Blue-noise properties.
    - [x] Write function to compute FPS.
    - [x] Create test script to visualize the point samples with specified number of points.
- [x] Transform T to points on closed manifold to preserve uniform point sampling.
    - [x] Use the arc cosine formulation for transforming t, s to phi, theta in 3D.
    - [x] Update test script to visualize point samples on closed manifold as well.
- [x] Merge with main branch.
- [x] Create a tag and push it to create a release.
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "geodiff",
    "maintainer": "Atharva Aalok",
    "docs_url": null,
    "requires_python": ">=3.12.0",
    "maintainer_email": "Atharva Aalok <atharvaaalok@gmail.com>",
    "keywords": "differentiable-geometry, shape-optimization, PyTorch, machine-learning, deep-learning, geometric-deep-learning, CFD, design-optimization",
    "author": "Atharva Aalok",
    "author_email": "Atharva Aalok <atharvaaalok@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/48/c2/073d6e85e92d33142fd2eb3ea5bf0e6c47adf454440354425774fec1192c/geodiff-0.9.4.tar.gz",
    "platform": null,
    "description": "Differentiable geometry representations for shape parameterization and optimization.\n\n\n## Project Plan\n### Stage 1: Initial Setup\n- [x] Add Github Actions workflow for Github Pages.\n- [x] Create first cut User Docs using Jupyter Books and MyST markdown.\n    - [x] What is this package for?\n    - [x] Add .gitignore for MyST markdown.\n- [x] Launch Github Discussions for the project.\n    - [x] Create introductory dicussion post.\n- [x] Add MIT License.\n- [x] Update pyproject.toml.\n    - [x] Maintainers, license, license-file, keywords, classifiers, project urls.\n- [x] Add Github Actions workflow for Github Release and PyPI publishing.\n- [x] Add CHANGELOG.md to maintain release details.\n- [x] Create first tag and push it to initiate first release and publish.\n\n### Stage 2: Implement Geometry Representations\n- [x] Install necessary dependencies\n    - [x] numpy, matplotlib and pytorch.\n- [x] Implement loss functions.\n    - [x] Start with Chamfer loss.\n- [x] Hicks-Henne bump functions.\n    - [x] Implement the Hicks-Henne class.\n    - [x] Add visualization method.\n    - [x] Add type hints and docstrings.\n    - [x] Add test script.\n    - [x] Add documentation.\n    - [x] Merge with main branch.\n    - [x] Create a tag and push it to create a release.\n- [x] CST parameterization.\n    - [x] Implement the CST class.\n    - [x] Add visualization method.\n    - [x] Add type hints and docstrings.\n    - [x] Add test script.\n    - [x] Add documentation.\n    - [x] Merge with main branch.\n    - [x] Create a tag and push it to create a release.\n- [x] NICE normalizing flow parameterization.\n    - [x] Implement the NICE class.\n    - [x] Add visualization method.\n    - [x] Add type hints and docstrings.\n    - [x] Add test script.\n    - [x] Add documentation.\n    - [x] Merge with main branch.\n    - [x] Create a tag and push it to create a release.\n- [x] RealNVP normalizing flow parameterization.\n    - [x] Implement the RealNVP class.\n    - [x] Add visualization method.\n    - [x] Add type hints and docstrings.\n    - [x] Add test script.\n    - [x] Add documentation.\n    - [x] Merge with main branch.\n    - [x] Create a tag and push it to create a release.\n- [x] NIGnet parameterization.\n    - [x] Implement the NIGnet class.\n    - [x] Add visualization method.\n    - [x] Add type hints and docstrings.\n    - [x] Add test script.\n    - [x] Add documentation.\n    - [x] Merge with main branch.\n    - [x] Create a tag and push it to create a release.\n- [x] NeuralODE parameterization.\n    - [x] Implement the NeuralODE class.\n    - [x] Add visualization method.\n    - [x] Add type hints and docstrings.\n    - [x] Add test script.\n    - [x] Add documentation.\n    - [x] Merge with main branch.\n    - [x] Create a tag and push it to create a release.\n- [x] Make Pre-Aux net modular by defining it separately from the invertible networks.\n    - [x] Make Pre-Aux net modular for NICE.\n    - [x] Change test script for NICE.\n    - [x] Make Pre-Aux net modular for all representations.\n    - [x] Change test scripts for all representations.\n    - [x] Update documentation for all representations.\n        - [x] Fix random seed for replicating results.\n    - [x] Merge with main branch.\n    - [x] Create a tag and push it to create a release.\n\n\n### Stage 3: Implement Latent Vectors for Geometry Representation\n- [x] Add latent code functionality to Pre-Aux nets.\n- [x] Add latent code functionality to NICE.\n- [x] Add test script for training with latent code using autodecoder framework.\n    - [x] Use NICE for the test script.\n    - [x] Fit two latent codes to fit two differently rotated squares.\n- [x] Add latent code functionality to all representations.\n- [x] Merge with main branch.\n- [x] Create a tag and push it to create a release.\n\n\n### Stage 4: Improve Sampling of Points on the Closed Transform\n- [x] Sample points in T [0, 1]^d using Farthest Point Sampling for Blue-noise properties.\n    - [x] Write function to compute FPS.\n    - [x] Create test script to visualize the point samples with specified number of points.\n- [x] Transform T to points on closed manifold to preserve uniform point sampling.\n    - [x] Use the arc cosine formulation for transforming t, s to phi, theta in 3D.\n    - [x] Update test script to visualize point samples on closed manifold as well.\n- [x] Merge with main branch.\n- [x] Create a tag and push it to create a release.",
    "bugtrack_url": null,
    "license": null,
    "summary": "Differentiable geometry representations for shape parameterization and optimization.",
    "version": "0.9.4",
    "project_urls": {
        "bugtracker": "https://github.com/atharvaaalok/geodiff/issues",
        "changelog": "https://github.com/atharvaaalok/geodiff/blob/main/CHANGELOG.md",
        "documentation": "https://atharvaaalok.github.io/geodiff/",
        "forum": "https://github.com/atharvaaalok/geodiff/discussions",
        "homepage": "https://atharvaaalok.github.io/geodiff/",
        "repository": "https://github.com/atharvaaalok/geodiff"
    },
    "split_keywords": [
        "differentiable-geometry",
        " shape-optimization",
        " pytorch",
        " machine-learning",
        " deep-learning",
        " geometric-deep-learning",
        " cfd",
        " design-optimization"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "726bf23078a02d7f768d3c5a5b0bb866202ecae5152df6533f58700b668b6ba4",
                "md5": "36b979d59e94da2e2063c39bf70ea159",
                "sha256": "c2dc2bf4f957aad1a5dbdd9be6f6f9fe0c48421eeb89a899b8e8b3028521bfd8"
            },
            "downloads": -1,
            "filename": "geodiff-0.9.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "36b979d59e94da2e2063c39bf70ea159",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12.0",
            "size": 30771,
            "upload_time": "2025-10-24T05:52:42",
            "upload_time_iso_8601": "2025-10-24T05:52:42.044301Z",
            "url": "https://files.pythonhosted.org/packages/72/6b/f23078a02d7f768d3c5a5b0bb866202ecae5152df6533f58700b668b6ba4/geodiff-0.9.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "48c2073d6e85e92d33142fd2eb3ea5bf0e6c47adf454440354425774fec1192c",
                "md5": "07cb9b2dedcdd8a3be26b119f270d59f",
                "sha256": "a5220cddc73a21802f55cdbd0ab615006040fb231dac630fafd74b6360afe58e"
            },
            "downloads": -1,
            "filename": "geodiff-0.9.4.tar.gz",
            "has_sig": false,
            "md5_digest": "07cb9b2dedcdd8a3be26b119f270d59f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12.0",
            "size": 18005,
            "upload_time": "2025-10-24T05:52:43",
            "upload_time_iso_8601": "2025-10-24T05:52:43.297123Z",
            "url": "https://files.pythonhosted.org/packages/48/c2/073d6e85e92d33142fd2eb3ea5bf0e6c47adf454440354425774fec1192c/geodiff-0.9.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-24 05:52:43",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "atharvaaalok",
    "github_project": "geodiff",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "geodiff"
}
        
Elapsed time: 1.35683s