{"id":29633658,"url":"https://github.com/mikeswang/fftw-age","last_synced_at":"2025-07-21T14:06:06.373Z","repository":{"id":238853981,"uuid":"797474381","full_name":"MikeSWang/FFTW-Age","owner":"MikeSWang","description":"FFTW wisdom generation","archived":false,"fork":false,"pushed_at":"2025-02-04T11:02:50.000Z","size":106,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-12T01:14:27.958Z","etag":null,"topics":["cpp","fftw"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MikeSWang.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":".github/SECURITY.md","support":".github/SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-05-07T22:57:38.000Z","updated_at":"2025-02-04T11:02:49.000Z","dependencies_parsed_at":"2024-08-21T21:51:28.131Z","dependency_job_id":"ad4b12ef-ac54-4329-94c4-646234337a05","html_url":"https://github.com/MikeSWang/FFTW-Age","commit_stats":null,"previous_names":["mikeswang/fftw-age"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/MikeSWang/FFTW-Age","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeSWang%2FFFTW-Age","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeSWang%2FFFTW-Age/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeSWang%2FFFTW-Age/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeSWang%2FFFTW-Age/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MikeSWang","download_url":"https://codeload.github.com/MikeSWang/FFTW-Age/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeSWang%2FFFTW-Age/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266315763,"owners_count":23909802,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-21T11:47:31.412Z","response_time":64,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp","fftw"],"created_at":"2025-07-21T14:06:03.839Z","updated_at":"2025-07-21T14:06:06.346Z","avatar_url":"https://github.com/MikeSWang.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ``FFTW-Age``: FFTW Wisdom Generation\n\n[![Release](https://img.shields.io/github/v/release/MikeSWang/FFTW-Age?display_name=tag\u0026sort=semver\u0026logo=Git)](https://github.com/MikeSWang/FFTW-Age/releases/latest)\n[![CI](https://img.shields.io/github/actions/workflow/status/MikeSWang/FFTW-Age/ci.yml?label=ci\u0026logo=GitHubActions)](https://github.com/MikeSWang/FFTW-Age/actions/workflows/ci.yml)\n[![pre-commit.ci-Status](https://results.pre-commit.ci/badge/github/MikeSWang/FFTW-Age/main.svg)](https://results.pre-commit.ci/latest/github/MikeSWang/FFTW-Age/main)\n[![Codacy-Badge](https://app.codacy.com/project/badge/Grade/6e18472a2f9c447aaf35a66cbcf2f633)](https://app.codacy.com/gh/MikeSWang/FFTW-Age/dashboard?utm_source=gh\u0026utm_campaign=Badge_grade)\n\n\u003e \"_With age comes wisdom, but sometimes age comes alone._\"\n\u003e \u0026ensp;\u0026mdash; Oscar Wilde\n\n``FFTW-Age`` is a lightweight C++ utility for generating FFTW wisdom files\nfor OpenMP-multithreaded 3\u0026#8209;d FFT transforms as a replacement for\n[`fftw-wisdom`]( https://www.fftw.org/fftw-wisdom.1.html).\n\nFor background information, please refer to\n[FFTW Wisdom](https://www.fftw.org/fftw3_doc/Wisdom.html).\n\n\n## Installation\n\nThe C++ program can built with `make`, provided that dependency\nrequirements (FFTW3 and OpenMP libraries) are satisfied.\n\n\u003e [!IMPORTANT]\n\u003e Ensure the C++ compiler used supports OpenMP and the FFTW3 library is\n\u003e installed/configured accordingly. The default [``Makefile``](Makefile)\n\u003e (located at the repository directory root) assumes the GCC compiler and\n\u003e OpenMP library.\n\nFirst `git clone` the desired branch/release from the GitHub repository\nand change into the repository directory path:\n\n```sh\ngit clone git@github.com:MikeSWang/FFTW-Age.git --branch \u003cbranch-or-release\u003e\ncd FFTW-Age\n```\n\nThen, execute in shell:\n\n```sh\nmake clean\nmake install\n```\n\n\n## Usage\n\nOnce installed, the FFTW-Age utility can be called from the command line:\n\n```sh\nfftw-age [--rigour=\u003ctplan\u003e] [--outdir=\u003cwisdom-dir\u003e] \u003ctdir\u003e-\u003cdimx\u003ex\u003cdimy\u003ex\u003cdimz\u003e\n```\n\nwhere\n\n- `fftw-age` is assumed to be executable (include the path if it is not\n  in the current working directory);\n- ``\u003ctdir\u003e`` is the transform direction,\n  either ``\"f\"`` for ``FFTW_FORWARD`` and ``\"b\"`` for ``FFTW_BACKWARD``;\n- ``\u003cdimx\u003e``, ``\u003cdimy\u003e`` and ``\u003cdimz\u003e`` are the dimensions of the 3-d transform;\n- ``\u003ctplan\u003e`` corresponds to the FFTW planner flag/rigour level,\n  with ``\"m\"`` (measured; default) for ``FFTW_MEASURE``\n  and ``\"p\"`` (patient) for ``FFTW_PATIENT``;\n- ``\u003cwisdom-dir\u003e`` is the output wisdom file directory\n  (absolute or relative to the current working directory).\n\nThe output wisdom file will have the filename\n``fftw_omp_\u003cttype\u003e\u003cttarr\u003e\u003ctdir\u003e_\u003cdimx\u003ex\u003cdimy\u003ex\u003cdimz\u003e_\u003ctplan\u003e.wisdom``.\n\n\u003e [!NOTE]\n\u003e Only complex-to-complex, in-place transforms are currently supported.  Hence\n\u003e ``\u003cttype\u003e`` is fixed to ``\"c\"`` (complex-to-complex) and\n\u003e ``\u003cttarr\u003e`` is fixed to ``\"i\"`` (in-place) for now.\n\nSee also the help message generated by ``fftw-age --help``.\n\nFor more information about FFTW planner flags, please refer to\n[FFTW Planner Flags](https://www.fftw.org/fftw3_doc/Planner-Flags.html).\n\n\n## Attribution\n\nTo acknowledge the use of ``FFTW-Age`` in your published research, please\ncite this repository; you can refer to the file [``CITATION.cff``](CITATION.cff)\nfor the relevant information.\n\n\n## Acknowledgement\n\nThis C++ utility makes use of the [``argparse``](\nhttps://github.com/p-ranav/argparse) library.\n\n\n## Contributing/Development\n\n![C++-Standard](https://img.shields.io/badge/std-c%2B%2B17-informational?logo=cplusplus)\n\n[![Release-Date](https://img.shields.io/github/release-date-pre/MikeSWang/FFTW-Age)](https://github.com/MikeSWang/FFTW-Age/releases/latest)\n![Commits-Since](https://img.shields.io/github/commits-since/MikeSWang/FFTW-Age/latest/main)\n\n[![Build-Issues](https://img.shields.io/github/issues/MikeSWang/FFTW-Age/build)](https://github.com/MikeSWang/FFTW-Age/issues?q=is%3Aopen+is%3Aissue+label%3Abuild)\n[![Bug-Issues](https://img.shields.io/github/issues/MikeSWang/FFTW-Age/bug)](https://github.com/MikeSWang/FFTW-Age/issues?q=is%3Aopen+is%3Aissue+label%3Abug)\n[![Feature-Issues](https://img.shields.io/github/issues/MikeSWang/FFTW-Age/feature)](https://github.com/MikeSWang/FFTW-Age/issues?q=is%3Aopen+is%3Aissue+label%3Afeature)\n[![Pull-Requests](https://img.shields.io/github/issues-pr/MikeSWang/FFTW-Age)](https://github.com/MikeSWang/FFTW-Age/pulls)\n\n[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit)](https://github.com/pre-commit/pre-commit)\n\n[![Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MikeSWang/FFTW-Age?hide_repo_select=true\u0026ref=main)\n\nUser feedback and contributions are very welcome. Please refer to the\n[contribution guidelines](.github/CONTRIBUTING.md).\n\n\n## Discussions \u0026 Wiki\n\n[![Discussions](https://img.shields.io/github/discussions/MikeSWang/FFTW-Age)](https://github.com/MikeSWang/FFTW-Age/discussions)\n\nA [community forum](https://github.com/MikeSWang/FFTW-Age/discussions)\nfor users and developers exists, where you can receive\nannouncements, post questions, share ideas and get updates.\n\nA [wiki site](https://github.com/MikeSWang/FFTW-Age/wiki) collects wisdoms\nfor specific use cases and user environments.\n\n\n## Releases\n\nRelease notes are included in the [change log](CHANGELOG.md).\n\n\n## Licence\n\n[![Licence](https://img.shields.io/github/license/MikeSWang/FFTW-Age?label=licence\u0026style=flat-square\u0026color=informational)](https://github.com/MikeSWang/FFTW-Age/blob/main/LICENCE)\n\n``FFTW-Age`` is made freely available under the [GPL-3.0 licence](\nhttps://www.gnu.org/licenses/gpl-3.0.en.html) (or any later version).\nPlease see [``LICENCE``](./LICENCE) (located at the repository directory root)\nfor full terms and conditions.\n\n\u0026copy; 2024 Mike S Wang\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikeswang%2Ffftw-age","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmikeswang%2Ffftw-age","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikeswang%2Ffftw-age/lists"}