Size: a a a

2018 May 28

Dv

Dr. Friedrich von Never in comput.math
Так, погодь. Ты утверждаешь, что прочитал из файла число 1.16460796736525600, а матлаб тебе показывает уже число 1.164608001708984?
источник

RK

Ruslan Kopylov in comput.math
Dr. Friedrich von Never
Так, погодь. Ты утверждаешь, что прочитал из файла число 1.16460796736525600, а матлаб тебе показывает уже число 1.164608001708984?
Именно так
источник

Dv

Dr. Friedrich von Never in comput.math
Можешь быстренько показать короткую прогу на матлабе, которая повторяет это поведение?
источник

RK

Ruslan Kopylov in comput.math
Dr. Friedrich von Never
Можешь быстренько показать короткую прогу на матлабе, которая повторяет это поведение?
Кстати не пробовал это повторять отдельным куском малого кода, чтобы проверить, повторяется ли эта "магия" или нет. Просто если нет, значит в большом коде я где-то пропустил преобразования все-таки, видимо. Сейчас попробую набросать  и проверить)
источник

Dv

Dr. Friedrich von Never in comput.math
Ruslan Kopylov
Кстати не пробовал это повторять отдельным куском малого кода, чтобы проверить, повторяется ли эта "магия" или нет. Просто если нет, значит в большом коде я где-то пропустил преобразования все-таки, видимо. Сейчас попробую набросать  и проверить)
Вот смотри, я уже написал такой код:
f = fopen('T:\Temp\file.txt', 'r')
x = fgets(f)
# x = 1.16460796736525600
y = str2num(x)
# y =  1.1646
format long
y
# y =  1.16460796736526


Уже заметно, что число стало другим, но не таким же, как у тебя :)
источник

Dv

Dr. Friedrich von Never in comput.math
(в файле было число 1.16460796736525600, твоё оригинальное)
источник

Dv

Dr. Friedrich von Never in comput.math
⚠️ Ну и у меня Octave, так что результат может отличаться от настоящего матлаба, проверяй у себя!
источник

RK

Ruslan Kopylov in comput.math
Dr. Friedrich von Never
⚠️ Ну и у меня Octave, так что результат может отличаться от настоящего матлаба, проверяй у себя!
На обычном MatLab то же самое.
источник

RK

Ruslan Kopylov in comput.math
Хм, а идея с костылем на Си с передачей кучи параметров из питона была не такой уж и плохой))
источник

Dv

Dr. Friedrich von Never in comput.math
Окей, то есть вопрос не в чтении файла, правильно? Или он у тебя читается другим образом.
источник

Dv

Dr. Friedrich von Never in comput.math
Ruslan Kopylov
Хм, а идея с костылем на Си с передачей кучи параметров из питона была не такой уж и плохой))
Когда мне надо было интегрироваться с матлабом, я сделал так:
- готовлю входной файл для матлабового софта (текстовый)
- читаю его в матлабе и обрабатываю данные, на выход даю другой файл (в формате который мне удобно)
- этот файл читаю и обрабатываю во внешней программе на языке, на каком захочу
источник

Dv

Dr. Friedrich von Never in comput.math
Ну только ты будь внимателен. У тебя в самих данных уже всё весьма интересно: твои числа, кажется (?? под вопросом) не были получены из float или double — там таких цифр просто нет.
источник

RK

Ruslan Kopylov in comput.math
Dr. Friedrich von Never
Когда мне надо было интегрироваться с матлабом, я сделал так:
- готовлю входной файл для матлабового софта (текстовый)
- читаю его в матлабе и обрабатываю данные, на выход даю другой файл (в формате который мне удобно)
- этот файл читаю и обрабатываю во внешней программе на языке, на каком захочу
Я бы такой сразу все на матлабе написал, на работе не хотят его покупать, а в прод пробную версию вообще опасно запускать..)
источник

Dv

Dr. Friedrich von Never in comput.math
Возможно, исходный файл уже был построен на основании каких-нибудь 80-битовых чисел расширенной точности, а мы его так вот варварски портим своими даблами.
источник

Dv

Dr. Friedrich von Never in comput.math
Ruslan Kopylov
Я бы такой сразу все на матлабе написал, на работе не хотят его покупать, а в прод пробную версию вообще опасно запускать..)
Посмотрите на Octave, оно бесплатное.
источник

Dv

Dr. Friedrich von Never in comput.math
И совместимо с матлабом во многих аспектах (ну, для моих научных расчётов этой совместимости хватило — я запускал там матлабовый код и был доволен).
источник

RK

Ruslan Kopylov in comput.math
Dr. Friedrich von Never
И совместимо с матлабом во многих аспектах (ну, для моих научных расчётов этой совместимости хватило — я запускал там матлабовый код и был доволен).
Интересная штуковина, за наводку спасибо большое.
Нужно будет попробовать весь этот проект на матлабе запустить под ним)
источник

g

gsomix in comput.math
@twilightrus @fvnever

% test.txt
% 1.16460796736525600

load('test.txt', '-ascii')
format long
test

% output: 1.164607967365256
источник

Dv

Dr. Friedrich von Never in comput.math
Ок, так короче!
источник

g

gsomix in comput.math
Кажется, все считывается верно. Это MATLAB.
источник