RunMat
GitHub

sind — Compute element-wise sine values for degree-based angles with MATLAB-compatible canonical outputs.

y = sind(x) evaluates sine using degree-based angles instead of radians. It follows MATLAB-compatible handling for canonical multiples so values like 0, 30, 90, 150, and 180 degrees map cleanly to expected exact outputs.

Syntax

Y = sind(X)

Inputs

NameTypeRequiredDefaultDescription
XAnyYesInput scalar, array, logical array, complex value, or gpuArray.

Returns

NameTypeDescription
YAnyElement-wise sine result with degree input semantics.

Errors

IdentifierWhenMessage
RunMat:sind:InvalidInputInput cannot be interpreted as supported numeric/logical/complex data.sind: invalid input
RunMat:sind:InternalInternal gather/conversion/allocation flow failed.sind: internal error

How sind works

  • Operates element-wise on scalars, vectors, matrices, and N-D tensors.
  • Integer and logical inputs are promoted to double precision before evaluation.
  • Returns exactly 0 at multiples of 180 and exactly ±1 at the odd multiples of 90 (±90 + 360k).
  • Returns exactly ±0.5 at angles congruent to ±30 or ±150 modulo 360.
  • Complex inputs delegate to the analytic extension of sin after scaling by pi/180; exact-value treatment for complex operands is deferred.
  • Output shape matches the input shape; non-finite inputs propagate as NaN.
  • String inputs are unsupported and raise a builtin-scoped error.

Examples

Sine of a canonical degree angle

y = sind(30)

Expected output:

y = 0.5

Sine of multiples of 180 returns exactly zero

y = sind([0 180 360])

Expected output:

y = [0 0 0]

Sine of a vector of common angles

angles = [0 30 45 60 90];
y = sind(angles)

Expected output:

y = [0 0.5 0.7071 0.8660 1]

Using sind with coding agents

Open a RunMat example with live inputs, then ask the agent to explain how sind changes the result.

Run a small sind example, explain the result, then change one input and compare the output.

FAQ

Why does sind(180) return exactly zero?

MATLAB guarantees an exact zero at multiples of 180 to avoid floating-point noise from pi. RunMat reduces the angle modulo 360 and short-circuits the canonical cases before delegating to sin.

Is sind(x) equivalent to sin(x*pi/180)?

Mathematically yes, but the floating-point result differs at canonical angles because pi/180 is not exact in binary floating point. sind returns the exact MATLAB values at multiples of 30, 90, 150, and 180.

Does sind support arrays?

Yes. Scalars, vectors, matrices, and N-D tensors are all handled element-wise; the shape of the input is preserved.

Trigonometry

acos · acosh · asin · asinh · atan · atan2 · atanh · cos · cosd · cosh · deg2rad · rad2deg · sin · sinh · tan · tand · tanh

Elementwise

abs · angle · complex · conj · double · exp · expm1 · factorial · gamma · hypot · imag · ldivide · log · log10 · log1p · log2 · minus · nextpow2 · plus · pow2 · power · rdivide · real · sign · single · sqrt · times

Reduction

all · any · cummax · cummin · cumprod · cumsum · cumtrapz · diff · gradient · max · mean · median · min · nnz · prod · std · sum · trapz · var

Signal

blackman · butter · conv · conv2 · deconv · filter · hamming · hann · sawtooth · sinc · square

Rounding

ceil · fix · floor · mod · rem · round

Factor

chol · eig · lu · qr · svd

Solve

cond · det · inv · linsolve · norm · pinv · rank · rcond · rref

Fft

fft · fft2 · fftshift · ifft · ifft2 · ifftshift

Interpolation

interp1 · interp2 · pchip · ppval · spline

Ode

ode15s · ode23 · ode45

Open-source implementation

Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how sind is executed, line by line, in Rust.

About RunMat

RunMat is an open-source runtime that executes MATLAB-syntax code blazing on any GPU. It is licensed under the Apache 2.0 license.

  • RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed. Simulations that took hours now take minutes.
  • Start running code in seconds. RunMat runs in the browser, on the desktop, or from the CLI. No license server, no IT ticket.

Getting started · Benchmarks · Pricing

Download RunMat

Download RunMat for full performance, or use RunMat in your browser for zero setup.