```ts

/** a divided by b */
export function safeDivide(a: number, b: number): number {
  if (b === 0 || !isFinite(b)) {
    throw new Error("Division by zero or non-numerical value.");
  }
  // No rounding required as per the problem description
  return a / b;
}

// Helper function to check if a value is finite (not NaN, positive/negative Infinity)
function isFinite(value: number): boolean {
  return typeof value === "number" && !Number.isNaN(value) && !Number.isInfinity(value);
}
```