Conversation
---
type: pre_commit_static_analysis_report
description: Results of running static analysis checks when committing changes.
report:
- task: lint_filenames
status: passed
- task: lint_editorconfig
status: passed
- task: lint_markdown_pkg_readmes
status: passed
- task: lint_markdown_docs
status: na
- task: lint_markdown
status: na
- task: lint_package_json
status: passed
- task: lint_repl_help
status: passed
- task: lint_javascript_src
status: passed
- task: lint_javascript_cli
status: na
- task: lint_javascript_examples
status: passed
- task: lint_javascript_tests
status: passed
- task: lint_javascript_benchmarks
status: passed
- task: lint_python
status: na
- task: lint_r
status: na
- task: lint_c_src
status: na
- task: lint_c_examples
status: na
- task: lint_c_benchmarks
status: na
- task: lint_c_tests_fixtures
status: passed
- task: lint_shell
status: na
- task: lint_typescript_declarations
status: passed
- task: lint_typescript_tests
status: passed
- task: lint_license_headers
status: passed
---
| // cos( 2π/3 ): | ||
| var TAUR = -0.5; | ||
|
|
||
| // sin( 2π/3 ): | ||
| var TAUI = 0.8660253882408142; |
There was a problem hiding this comment.
Converted the double-precision values present here to float32:
In [15]: var f32 = require( '@stdlib/number/float64/base/to-float32' );
In [16]: f32(-0.5)
Out[16]: -0.5
In [17]: f32(0.866025403784439)
Out[17]: 0.8660253882408142
| // cos( 2π/5 ): | ||
| var TR11 = 0.30901700258255005; | ||
|
|
||
| // sin( 2π/5 ): | ||
| var TI11 = 0.9510565400123596; | ||
|
|
||
| // cos( 4π/5 ): | ||
| var TR12 = -0.80901700258255; | ||
|
|
||
| // sin( 4π/5 ): | ||
| var TI12 = 0.5877852439880371; |
There was a problem hiding this comment.
In [18]: f32(0.309016994374947)
Out[18]: 0.30901700258255005
In [19]: f32(0.951056516295154)
Out[19]: 0.9510565400123596
In [20]: f32(-0.809016994374947)
Out[20]: -0.80901700258255
In [21]: f32(0.587785252292473)
Out[21]: 0.5877852439880371
| fview = new Uint32Array( w.buffer, w.byteOffset, w.length ); | ||
| rfftf1( N, r, strideR, offsetR, w, strideW, offsetW, w, strideW, offsetT, fview, strideW, offsetF ); // eslint-disable-line max-len |
There was a problem hiding this comment.
Passing the factorization region of the workspace as a Uint32Array view here.
| l1 = floor( l2 / factor ); | ||
|
|
||
| ido = floor( N / l2 ); |
There was a problem hiding this comment.
Using floor here instead of floorf, since the operands are integers only.
| # @param {(string|void)} fPIC - flag indicating whether to generate position independent code | ||
| #/ | ||
| $(c_targets): %.out: %.c | ||
| $(QUIET) $(CC) $(CFLAGS) $(fPIC) -o $@ $(FFTPACK_SRC) $< -lm |
There was a problem hiding this comment.
Not having the -DFFTPACK_DOUBLE_PRECISION flag here (which is present here), since this is not a double-precision package.
Coverage Report
The above coverage report was generated for the changes in this PR. |
| input = large.input; | ||
| expected = large.expected; | ||
|
|
||
| ulps = 1; |
There was a problem hiding this comment.
Here and in all other tests in this package, we require only 1 ulp, unlike that in generic variant of rfftf, where we required around 800.
type: pre_commit_static_analysis_report
description: Results of running static analysis checks when committing changes. report:
Resolves stdlib-js/metr-issue-tracker#1334.
Description
This pull request:
fft/base/fftpack/float32/rfftf, which will be single-precision floating-point equivalent forfft/base/fftpack/generic/rfftf.Related Issues
This pull request has the following related issues:
fft/base/fftpack/float32/rfftfmetr-issue-tracker#1334.Questions
No.
Other
No.
Checklist
AI Assistance
If you answered "yes" above, how did you use AI assistance?
Disclosure
Used Claude code review the implementation.
@stdlib-js/reviewers