1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 4317 4318 4319 4320 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 4352 4353 4354 4355 4356 4357 4358 4359 4360 4361 4362 4363 4364 4365 4366 4367 4368 4369 4370 4371 4372 4373 4374 4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 4386 4387 4388 4389 4390 4391 4392 4393 4394 4395 4396 4397 4398 4399 4400 4401 4402 4403 4404 4405 4406 4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418 4419 4420 4421 4422 4423 4424 4425 4426 4427 4428 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441 4442 4443 4444 4445 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459 4460 4461 4462 4463 4464 4465 4466 4467 4468 4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 4556 4557 4558 4559 4560 4561 4562 4563 4564 4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 4582 4583 4584 4585 4586 4587 4588 4589 4590 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 4616 4617 4618 4619 4620 4621 4622 4623 4624 4625 4626 4627 4628 4629 4630 4631 4632 4633 4634 4635 4636 4637 4638 4639 4640 4641 4642 4643 4644 4645 4646 4647 4648 4649 4650 4651 4652 4653 4654 4655 4656 4657 4658 4659 4660 4661 4662 4663 4664 4665 4666 4667 4668 4669 4670 4671 4672 4673 4674 4675 4676 4677 4678 4679 4680 4681 4682 4683 4684 4685 4686 4687 4688 4689 4690 4691 4692 4693 4694 4695 4696 4697 4698 4699 4700 4701 4702 4703 4704 4705 4706 4707 4708 4709 4710 4711 4712 4713 4714 4715 4716 4717 4718 4719 4720 4721 4722 4723 4724 4725 4726 4727 4728 4729 4730 4731 4732 4733 4734 4735 4736 4737 4738 4739 4740 4741 4742 4743 4744 4745 4746 4747 4748 4749 4750 4751 4752 4753 4754 4755 4756 4757 4758 4759 4760 4761 4762 4763 4764 4765 4766 4767 4768 4769 4770 4771 4772 4773 4774 4775 4776 4777 4778 4779 4780 4781 4782 4783 4784 4785 4786 4787 4788 4789 4790 4791 4792 4793 4794 4795 4796 4797 4798 4799 4800 4801 4802 4803 4804 4805 4806 4807 4808 4809 4810 4811 4812 4813 4814 4815 4816 4817 4818 4819 4820 4821 4822 4823 4824 4825 4826 4827 4828 4829 4830 4831 4832 4833 4834 4835 4836 4837 4838 4839 4840 4841 4842 4843 4844 4845 4846 4847 4848 4849 4850 4851 4852 4853 4854 4855 4856 4857 4858 4859 4860 4861 4862 4863 4864 4865 4866 4867 4868 4869 4870 4871 4872 4873 4874 4875 4876 4877 4878 4879 4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 4913 4914 4915 4916 4917 4918 4919 4920 4921 4922 4923 4924 4925 4926 4927 4928 4929 4930 4931 4932 4933 4934 4935 4936 4937 4938 4939 4940 4941 4942 4943 4944 4945 4946 4947 4948 4949 4950 4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962 4963 4964 4965 4966 4967 4968 4969 4970 4971 4972 4973 4974 4975 4976 4977 4978 4979 4980 4981 4982 4983 4984 4985 4986 4987 4988 4989 4990 4991 4992 4993 4994 4995 4996 4997 4998 4999 5000 5001 5002 5003 5004 5005 5006 5007 5008 5009 5010 5011 5012 5013 5014 5015 5016 5017 5018 5019 5020 5021 5022 5023 5024 5025 5026 5027 5028 5029 5030 5031 5032 5033 5034 5035 5036 5037 5038 5039 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 5050 5051 5052 5053 5054 5055 5056 5057 5058 5059 5060 5061 5062 5063 5064 5065 5066 5067 5068 5069 5070 5071 5072 5073 5074 5075 5076 5077 5078 5079 5080 5081 5082 5083 5084 5085 5086 5087 5088 5089 5090 5091 5092 5093 5094 5095 5096 5097 5098 5099 5100 5101 5102 5103 5104 5105 5106 5107 5108 5109 5110 5111 5112 5113 5114 5115 5116 5117 5118 5119 5120 5121 5122 5123 5124 5125 5126 5127 5128 5129 5130 5131 5132 5133 5134 5135 5136 5137 5138 5139 5140 5141 5142 5143 5144 5145 5146 5147 5148 5149 5150 5151 5152 5153 5154 5155 5156 5157 5158 5159 5160 5161 5162 5163 5164 5165 5166 5167 5168 5169 5170 5171 5172 5173 5174 5175 5176 5177 5178 5179 5180 5181 5182 5183 5184 5185 5186 5187 5188 5189 5190 5191 5192 5193 5194 5195 5196 5197 5198 5199 5200 5201 5202 5203 5204 5205 5206 5207 5208 5209 5210 5211 5212 5213 5214 5215 5216 5217 5218 5219 5220 5221 5222 5223 5224 5225 5226 5227 5228 5229 5230 5231 5232 5233 5234 5235 5236 5237 5238 5239 5240 5241 5242 5243 5244 5245 5246 5247 5248 5249 5250 5251 5252 5253 5254 5255 5256 5257 5258 5259 5260 5261 5262 5263 5264 5265 5266 5267 5268 5269 5270 5271 5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283 5284 5285 5286 5287 5288 5289 5290 5291 5292 5293 5294 5295 5296 5297 5298 5299 5300 5301 5302 5303 5304 5305 5306 5307 5308 5309 5310 5311 5312 5313 5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 5343 5344 5345 5346 5347 5348 5349 5350 5351 5352 5353 5354 5355 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366 5367 5368 5369 5370 5371 5372 5373 5374 5375 5376 5377 5378 5379 5380 5381 5382 5383 5384 5385 5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408 5409 5410 5411 5412 5413 5414 5415 5416 5417 5418 5419 5420 5421 5422 5423 5424 5425 5426 5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 5437 5438 5439 5440 5441 5442 5443 5444 5445 5446 5447 5448 5449 5450 5451 5452 5453 5454 5455 5456 5457 5458 5459 5460 5461 5462 5463 5464 5465 5466 5467 5468 5469 5470 5471 5472 5473 5474 5475 5476 5477 5478 5479 5480 5481 5482 5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494 5495 5496 5497 5498 5499 5500 5501 5502 5503 5504 5505 5506 5507 5508 5509 5510 5511 5512 5513 5514 5515 5516 5517 5518 5519 5520 5521 5522 5523 5524 5525 5526 5527 5528 5529 5530 5531 5532 5533 5534 5535 5536 5537 5538 5539 5540 5541 5542 5543 5544 5545 5546 5547 5548 5549 5550 5551 5552 5553 5554 5555 5556 5557 5558 5559 5560 5561 5562 5563 5564 5565 5566 5567 5568 5569 5570 5571 5572 5573 5574 5575 5576 5577 5578 5579 5580 5581 5582 5583 5584 5585 5586 5587 5588 5589 5590 5591 5592 5593 5594 5595 5596 5597 5598 5599 5600 5601 5602 5603 5604 5605 5606 5607 5608 5609 5610 5611 5612 5613 5614 5615 5616 5617 5618 5619 5620 5621 5622 5623 5624 5625 5626 5627 5628 5629 5630 5631 5632 5633 5634 5635 5636 5637 5638 5639 5640 5641 5642 5643 5644 5645 5646 5647 5648 5649 5650 5651 5652 5653 5654 5655 5656 5657 5658 5659 5660 5661 5662 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674 5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 5687 5688 5689 5690 5691 5692 5693 5694 5695 5696 5697 5698 5699 5700 5701 5702 5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 5785 5786 5787 5788 5789 5790 5791 5792 5793 5794 5795 5796 5797 5798 5799 5800 5801 5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812 5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839 5840 5841 5842 5843 5844 5845 5846 5847 5848 5849 5850 5851 5852 5853 5854 5855 5856 5857 5858 5859 5860 5861 5862 5863 5864 5865 5866 5867 5868 5869 5870 5871 5872 5873 5874 5875 5876 5877 5878 5879 5880 5881 5882 5883 5884 5885 5886 5887 5888 5889 5890 5891 5892 5893 5894 5895 5896 5897 5898 5899 5900 5901 5902 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 5914 5915 5916 5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927 5928 5929 5930 5931 5932 5933 5934 5935 5936 5937 5938 5939 5940 5941 5942 5943 5944 5945 5946 5947 5948 5949 5950 5951 5952 5953 5954 5955 5956 5957 5958 5959 5960 5961 5962 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972 5973 5974 5975 5976 5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 5991 5992 5993 5994 5995 5996 5997 5998 5999 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 6010 6011 6012 6013 6014 6015 6016 6017 6018 6019 6020 6021 6022 6023 6024 6025 6026 6027 6028 6029 6030 6031 6032 6033 6034 6035 6036 6037 6038 6039 6040 6041 6042 6043 6044 6045 6046 6047 6048 6049 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 6070 6071 6072 6073 6074 6075 6076 6077 6078 6079 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089 6090 6091 6092 6093 6094 6095 6096 6097 6098 6099 6100 6101 6102 6103 6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 6119 6120 6121 6122 6123 6124 6125 6126 6127 6128 6129 6130 6131 6132 6133 6134 6135 6136 6137 6138 6139 6140 6141 6142 6143 6144 6145 6146 6147 6148 6149 6150 6151 6152 6153 6154 6155 6156 6157 6158 6159 6160 6161 6162 6163 6164 6165 6166 6167 6168 6169 6170 6171 6172 6173 6174 6175 6176 6177 6178 6179 6180 6181 6182 6183 6184 6185 6186 6187 6188 6189 6190 6191 6192 6193 6194 6195 6196 6197 6198 6199 6200 6201 6202 6203 6204 6205 6206 6207 6208 6209 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219 6220 6221 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271 6272 6273 6274 6275 6276 6277 6278 6279 6280 6281 6282 6283 6284 6285 6286 6287 6288 6289 6290 6291 6292 6293 6294 6295 6296 6297 6298 6299 6300 6301 6302 6303 6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338 6339 6340 6341 6342 6343 6344 6345 6346 6347 6348 6349 6350 6351 6352 6353 6354 6355 6356 6357 6358 6359 6360 6361 6362 6363 6364 6365 6366 6367 6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 6381 6382 6383 6384 6385 6386 6387 6388 6389 6390 6391 6392 6393 6394 6395 6396 6397 6398 6399 6400 6401 6402 6403 6404 6405 6406 6407 6408 6409 6410 6411 6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427 6428 6429 6430 6431 6432 6433 6434 6435 6436 6437 6438 6439 6440 6441 6442 6443 6444 6445 6446 6447 6448 6449 6450 6451 6452 6453 6454 6455 6456 6457 6458 6459 6460 6461 6462 6463 6464 6465 6466 6467 6468 6469 6470 6471 6472 6473 6474 6475 6476 6477 6478 6479 6480 6481 6482 6483 6484 6485 6486 6487 6488 6489 6490 6491 6492 6493 6494 6495 6496 6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 6515 6516 6517 6518 6519 6520 6521 6522 6523 6524 6525 6526 6527 6528 6529 6530 6531 6532 6533 6534 6535 6536 6537 6538 6539 6540 6541 6542 6543 6544 6545 6546 6547 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 6582 6583 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593 6594 6595 6596 6597 6598 6599 6600 6601 6602 6603 6604 6605 6606 6607 6608 6609 6610 6611 6612 6613 6614 6615 6616 6617 6618 6619 6620 6621 6622 6623 6624 6625 6626 6627 6628 6629 6630 6631 6632 6633 6634 6635 6636 6637 6638 6639 6640 6641 6642 6643 6644 6645 6646 6647 6648 6649 6650 6651 6652 6653 6654 6655 6656 6657 6658 6659 6660 6661 6662 6663 6664 6665 6666 6667 6668 6669 6670 6671 6672 6673 6674 6675 6676 6677 6678 6679 6680 6681 6682 6683 6684 6685 6686 6687 6688 6689 6690 6691 6692 6693 6694 6695 6696 6697 6698 6699 6700 6701 6702 6703 6704 6705 6706 6707 6708 6709 6710 6711 6712 6713 6714 6715 6716 6717 6718 6719 6720 6721 6722 6723 6724 6725 6726 6727 6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738 6739 6740 6741 6742 6743 6744 6745 6746 6747 6748 6749 6750 6751 6752 6753 6754 6755 6756 6757 6758 6759 6760 6761 6762 6763 6764 6765 6766 6767 6768 6769 6770 6771 6772 6773 6774 6775 6776 6777 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 6792 6793 6794 6795 6796 6797 6798 6799 6800 6801 6802 6803 6804 6805 6806 6807 6808 6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819 6820 6821 6822 6823 6824 6825 6826 6827 6828 6829 6830 6831 6832 6833 6834 6835 6836 6837 6838 6839 6840 6841 6842 6843 6844 6845 6846 6847 6848 6849 6850
|
2025-11-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix default data property argument ("info")
* Limit range of arguments in binomial function
2025-11-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show vector, with many elements, in result using colon function when possible
2025-11-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add abortion point in bernoulli function with non-zero second argument
* Add abortion point in zeta function with negative integer as first argument and second argument != 1
2025-11-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix handling of single quotation marks
* Limit the range of supported arguments in igamma function to avoid segfault and very slow unabortable calculations
* Fix use of options "ignore locale" and "language" in command line arguments
* Reduce max argument of nextprime() and prevprime()
2025-11-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show error when plot function is used when Gnuplot is not found or is disabled by "--without-gnuplot-call"
* Fix segfault with entrywise operation on a column vector and an empty vector (e.g. "[1; 2].*[]")
* Fix segfaults with "{" or "}" in expression (qalc not affected)
2025-11-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add reshape() function
* Add warning when matrix/vector has been expanded in slice() or part()
* Improve support for multiple preferred languages on Windows
2025-11-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix compilation without readline
* Add circshift and replacePart functions
* v[i, ...]=... syntax for assignment of part of matrix/vector variable
* Rename and improve area (now "part"), limits ("slice"), and mergevectors ("combine") functions
* Improve language handling in definitions files
2025-10-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add default currency option in qalc
2025-10-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Limit the range of supported arguments in bessely and besselj functions (to avoid very slow unabortable calculations), and add abortion points
* Limit time used for dual calculation with time command line argument to same limit as without
* Do not try to calculate exact result with automatic approximation for expressions with iterative functions
2025-10-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix infinite loop during factorization (e.g. when calculating "base(1234567,x,3)=2^31") on Windows
2025-10-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Hide mode string (when show-mode-in-prompt is enabled) when asking for user input
* Improve interpretation of function expressions with x, y, and/or z in object names (e.g. "x year"), and/or within quotation marks (e.g. "x*code('x')"), in qalc
2025-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Avoid "Did you mean..." warning with same original text string as suggested
2025-10-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix crash after factorization with calculate-as-you-type enabled
* Fix segfault with both calculate-as-you-type and RPN mode enabled
* Improve support for character encodings other than UTF-8
2025-10-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New completion method which presents a numbered list of matches and lets the user select an item by entering the corresponding number
* Completion mode option
* Refine completion matching
* Hide "101" name variants
2025-10-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show error when function or variable disabled by "--disable-insecure" is used
* Fix "make test" (unittest) when compiled with --disable-insecure
* Fix matching of multiple words in title
* Fix compilation with -fsanitize=undefined
2025-10-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve speed when performing many multiple calculations read from file (by a factor of about 100 for simple calculations)
* Increase responsiveness by decreasing the length of sleep periods (from 10 to 1 ms) while waiting
* Improve calculation timer accuracy and add workaround for low time resolution for sleep on Windows
2025-10-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow any separator before time in date/time value if colon is used, and allow space as separator even if quotation marks are not used
* Allow use of Z after date for UTC time (without any time specified)
* Do not allow left over characters after date
* Fix negative time zone in date and time input
2025-10-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use category and title from existing local variable/function when using "=" for variable/function assignment
* Fix output of calculate-as-you-type parsed value (division was displayed using negative exponent) for excluded functions
* Do not write unnecessary (de)activate global objects to local definitions
* Always include million, thousand, hundred (they are not ambiguous like other large numbers)
* Fix make distcheck
2025-10-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Move erg/gram from equivalent to absorbed dose category
* If last character is a digit, include both letters and numerals in matched word for completion
* Fix reference names not used for reference of base units in some cases causing failure to load 13 units with Russian translation
* Make astronomical unit symbol case insensitive and use lower-case letters by default ("au")
2025-10-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Calculate with interval/uncertainty in where expression even if exact mode
* Fix display of "calculate as you type" and "save config" options, and remove duplicate "save mode" on Windows, in mode list
* Update names for Loschmidt, Molary volume of ideal gas, and Sackur tetrode constants to improve consistency
* Update value of HiggsBoson, quark_c, and quark_t constants
* Add StandardGravity_unit name
* Minor adjustment to Fine-Structure and Rydberg constants to more precisely reflect CODATA values for derived constants
* Use current mode for display of value, place units and uncertanity on same line, for variables in qalc
2025-09-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve accuracy for intervals in solutions to equations when using interval arithmetic
* Improve handling of intervals in where expressions
* Move jerk, snap, crackle, and pop to subcategory
* Change title "Gee" to "Standard Gravity (unit)" and add standard gravity per second
2025-09-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Avoid slow display of extreme numbers (> 2^10000000) with calculate-as-you-type
* Add min/km and min/mile (pace)
* Fix output of extremely large exact number with unnecessarily low precision with PrintOptions::preverve_precision activated
* Restrict number of digits (10000) for extremely large numbers when saving variable to file
* Fix 10 in scientific notation for approximate number in variable value displayed with decimals
2025-09-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when calculating log(a^n, a) with interval arthmetic is disabled
* Show warning and ask for confirmation when deactivating interval arithmetic in qalc
* (Re)activate interval arithmetic in qalc (if configuration from prevision version)
2025-09-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix language option without encoding (without ".utf8" at end)
* Fix LANGUAGE and LANG variables for translation of definitions on platforms other than Window
* Fix scruple unit typo ("scuple")
* Hide questionable IUNS calorie unit
* Initialize tm_isdst with -1 to make time zone determination more predictable, and accurate, for time around when daylight saving changes
2025-09-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Make titles for derived units without special symbols more consistent
* Automatically update calculate-as-you-type calculations every second when the expression contains now or uptime variable, or time() function
* Automatically calculate expression with "to"-operator even if it contains no other operator or number
* Fix id of uptime variable (was same as id for plus infinity)
2025-09-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add Kayser, Lambert, Foot-Lambert, Darcy, and Millidarcy units
* Fix unit selection for automatic conversion from single unit with quantity one in some cases (e.g. barye)
2025-09-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use mol as base unit for Einstein and clarify that Einstein refers to one mole of pohoton
* Match object name on words after underscore, e.g. oz in fl_oz (find/list command)
* Move (micro)einstein/(m²⋅s) to new category (molar flux) and add corresponding SI units
2025-09-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix inequality with 1/f(x) on one side, e.g. "1/(x-2) <= 2"
* Add erg/(cm²⋅s) unit
* Lower max bit width in bitrot(), bitset(), and setbits() functions, and max steps in shift()
2025-09-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix endless loop in Calculator::hasToExpression() with expression containing negative circled sans-serif digit dingbat
* Add (reduced) compton wavelength for muon, neutron, proton, and tau
* Add ƛ_C symbol to reduced compton wavelength and change alternative symbol for natural unit of length to ƛ_unit
* Stricter command argument in command() function
* Fix search term with more than one word and search for word preceded by parenthesis in title
* Specify minimal vector size for linearfit(), quadraticfit(), and cubicfit() functions
2025-09-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More efficient reducing of vector size (fixes segfault when aborting plot with very large number of samples)
2025-09-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when plot data generation is aborted before first y value has been calculated
2025-09-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault (infinite loop) in Calculator::findMatchingUnit() with "sr*Pa^2"
* Improve abortion of prime functions, and fix segfault when aborting prevprime() function
* Fix possible freeze when creating CompositeUnit with malformed expression (primarily relevant when parsing expression after "to" operator)
* Lower highest number of bits (to 10 000) in floating point conversion functions to avoid unresponsive application
2025-09-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix value of Planck unit (was rounded to 7 decimals)
2025-09-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Relocate qalc.history to $XDG_STATE_HOME (~/.local/state)
2025-09-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not show calculate as you type result for data set function with "info" (default) as second argument
* Separate translation of "info" as data set argument from "info" as qalc command
* Add "simple" to-operator option for non-scientific notation and apply non-scientific notation (exp off) for "decimal"
2025-09-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show warning about default assumptions the first time an equation is solved, in qalc
* Show warning when trying to calculate logarithm of quantity with unit, or value with unit in exponent
* Show warning "(!)" when calculate as you type expression, in qalc, results in a question
2025-08-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault with very small numbers (when floatValue() should return zero), high number of bits, and insufficient precision, in floating point conversion
2025-08-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update calculation of fraction of year (with day counting basis 0 and 1) to match method used in spreadsheets other than Gnumeric
2025-08-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add output in scientific (sci), or engineering (eng), notation as "to"-operator option (e.g. 1000 000 to sci = 1E6; also affects use of unit prefixes, negative unit exponents, etc.)
2025-08-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix dollarde() and dollarfr() functions
2025-08-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow use of non-existing variables, without using quotation marks or backslash (now also supported in X variable value), in plot expressions, and set appropriate assumptions in all cases (this affects GUIs but not the plot() function)
2025-08-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Parse 'p' in hexadecimal number as an operator (raise and multiply after parsing during calculation, e.g. 5p10 = 0x5 * 0x2^10), as with scientific E-notation, in order to improve display of parsed expression and avoid slow and very memory intensive calculations which might cause segfault in mpz_ui_pow_ui
* Fix poolvar(), ttest(), and cor() functions
* cor() and pearson() are the same function
* Simplify (do not use csum() function) poolvar(), covar(), meandev(), var(), varp(), rms(), geomean(), harmmean(), and weighmean() functions
* Change default quantile algorithm from 8 to 7
* Only allow positive values in geomean() and harmmean() functions
2025-08-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix calculate as you type and indentation with prompt string containing Unicode characters, control characters, and/or escape sequences
* Add "save config" option (if disabled qalc.cfg is never automatically updated)
2025-08-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add symbols/abbreviations with variant name (US, UK) as suffix (shown as subscript), and hide corresponding symbol/abbreviation with variant as prefix
* Add TeX scaled point unit
* Change "ATA Pica" to "Johnson Pica" and "ATA Point" to "American Point", and make corresponding name/symbol changes
* Set minimum preferred prefix to 0 for metric ton
* Return first argument of uncertainty() function directly without evaluation, in midpoint() function
2025-08-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add TeX point, twip, and agate typography units
2025-08-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when parsing "( \" followed by operator with RPN syntax
* Fix segfault in parsing of text argument in some cases (with RPN syntax)
2025-08-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for input of functions with more than one argument using RPN syntax
2025-08-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Load exchange rates even if exchange rates updates is not enabled (compiled with --without-libcurl), and show error message when exrates command is used in this case
2025-07-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix qError() function
2025-07-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix completion of text string ending with capital E
2025-07-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix input of inverse trigonometric function using Unicode power (e.g. sin⁻¹(x))
* Add support for input of exponent before argument of trigonometric function (e.g. sin²(x))
2025-07-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault during output of both approximate and exact logical OR value without (in)equality
* Do not add linebreak, in qalc, after OR outside of result display and when result does not contain (in)equality
* Fix display of result aborted because of time limit in some cases in qalc
2025-07-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Return exact integers in more case in log() function
* Fix segfault during calculation of (in)equality with root() function with insufficient number of arguments
2025-07-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault with text argument containing potential text returning function, or variable containing text value
* Add support for "to 1/n" as alternative to "to fraction"
* Ask for interpretation of comma (when comma is not default decimal separator)
2025-07-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix calculate as you type and indentation for show-mode-in-prompt with custom mode strings
2025-07-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for input of second argument of log() function with a number before parenthesis (e.g. log153(23409) = log_153(23409) = log(23409, 153))
* Add lb and log_2 names to log2() function, and lg and log_10 to log10()
* Add micron unit
* Convert micron and kph before calculation
2025-07-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix locale used for definitions when language option is set in qalc
2025-07-07 Marko Zajc <marko@zajc.tel>
* Do not colorize "E" in scientific E notation
2025-07-06 Cookie04DE <52695768+Cookie04DE@users.noreply.github.com>
* Add new binary prefixes (robi, quebi)
* Enable use of recently added SI prefixes in output by default
2025-07-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix non-localized data set key properties for languages where translations for multiple territories is available (e.g. zh_CN and zh_TW)
* Use semicolon as argument separator in output when comma is used as digit group separator
* Add indentation to each line of error/warning/information message with newline character (e.g. data object property list) in qalc
* Fix dataset copyright translation (the last translation in the data file were used regardless of language)
* Hide class property in elements data set
2025-07-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Customizable prompt in qalc
2025-06-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve avoidance of random number precalculation in iterative functions
* Do not overwrite user definitions when running tests
* Use inverse when converting from s to Hz (and similar)
2025-06-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Calculate random function in function argument occurring multple times in function definition
* Improve random function handling in "where" expression
2025-06-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve check for functions not compatible with calulate-as-you-type (less false positives)
2025-06-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve output for repeating decimals (do not repeat zero, e.g. in 1/81, and fix single repeating decimal with overline)
2025-06-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix handling of a single vector argument in times() function
* Warn in save() function when function expression contains conversion using "to"
2025-06-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove symbols/names from XOF, XAF
* Avoid using multiple exchange rates sources for conversion between two currencies
2025-05-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add symbols for THB, CRC, MVR, MUR, and NPR
* Fix name for TRY, KES, and PAB
* Replace SLL with SLE, and STD with STN
* Use Eswatini instead of Swaziland as country name
2025-05-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Disable calculate as you type for expression containing export, load, or command function (in addition to save and plot)
2025-05-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Only allow numbers and white space in exchanges rates
* Add fallback URL for exchange-api
2025-05-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Only convert right-hand side value for (in)equalities, when converting to dimensionless or angle units (for original values without unit), or non-linear units
* Reset exact value (for dual approximation) when applying "to" command in qalc
* Show error when trying to perform multiple conversions at same time using "to" command (without preceding expression on the same line)
* Fix segfault when exact and approximate results (of equation) have non-matching format (should not occur)
2025-05-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix angle conversion for (in)equalities (both sides where converted)
2025-05-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve handling of user functions returning value with angle unit, in angle arguments
2025-04-30 howaboutuser <120489523+howaboutuser@users.noreply.github.com>
* Add traditional Chinese translation
2025-04-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for units in limit() (separate units before calculating limit)
* Calculate limit for values containing infinity (not only infinite numbers) for definite integrals (do not return nonsense value for "integrate(x^2 exp(−x^2/(2m^2)),−infinity m,infinity m,x)")
* Treat approximate integer as integer for dimension, fix positive rational non-integer dimension not resulting in error, and do not test if number of steps is a positive integer if the sixth argument is negative, in genvector()
* Remove quotation marks (at beginning and end) from default value of text argument, even if the resulting text string is not empty
2025-04-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix default separator in load() and export() functions
* Show a warning when it appears as if the user tries to convert part of an expression (when there is an closing bracket without an opening bracket after "to")
2025-04-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add boolean argument for reversed conversion (to text string) in bin(), oct(), dec(), hex(), and base()
* Improve handling of function, returning text string, in text argument
* Fix µ_B name/symbol for Bohr magneton
* Fix name for gal/s and planck/bohr
2025-03-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix abort using SIGINT (Ctrl+C) during factor command (and some other commands)
2025-03-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix incorrect limit without direction for expression containing tan(x) when value to approach is pi/2
* Fix warning for some limits with tan(x)
* Do not return zero for tan(pi/2)-tan(pi/2)
2025-03-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix assumption conflict in solve("v3"/"r1"*"r2"+"v3"=2.5,"v3") - set do_polynomial_division=true in solve() and use same simplification for factorization test during solving of equation regardless of state of do_polynomial_disivison (both changes fixes the issue separately)
* Use LANGUAGE instead of LANG environment variable on Windows in order to avoid changing regional format settings
* Add "language" option in qalc
* Fix angle unit in output for "mode" command in qalc
2025-03-18 Rafael Franco <me@rafaelfranco.es>
* Fix autocalculate input offset with readline vi mode
2025-03-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support all real numbers in binomial(), comb(), and perm() functions (and use binomial() in the other two functions)
* Fix non-localized data set key properties (when localized version is available)
* Make copyright text of Elements and Planets data sets translatable
2025-03-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve decision to use parentheses for tab/ctrl+i result insert in qalc
2025-03-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve simplification and speed in diff() function for high orders by applying polynomial division and factorization between iterations
2025-03-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for display of repeating decimals using overline (vinculum) instead of ellipsis
* Remove confusing MRC name/symbol from MR (memory recall) variable
2025-02-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Convert turn left over after unit conversion to radians (e.g. "10000Nm*250*rpm to W")
2025-02-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Split function description into multiple text blocks, at newline, in help/info output in qalc in order to avoid blank lines when output does not fit terminal screen
2025-02-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not convert to inactive unit
* Fix calculate as you type with RPN syntax (update when last character is an operator)
* Support calculate as you type with RPN stack enabled
* Fix "where" operator using a saved equation (the "where" expression is a variable containing an equality or inequality)
* Add Ctrl+I shortcut for input of the previous result, either with text of value, or as temporary variable (replaced in history on exit) for approximate or long values
2025-02-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Return x=a*e^(i*r) (with r instead of n), with a warning informing the user that r represents any real number, for abs(x)=a
2025-01-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not show value twice, if not translated, in description of plot function
2025-01-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix solve() function with replace() function as first argument (fixes solve2() function)
2025-01-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not show couldn't write preferences warning if file is a symlink
2025-01-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Avoid recalculation of old calculate as you type expression when expression is empty, or calculation of empty expression before any calculation has occured, and calculation or parsing settings have been modified
* Add description to ans variable
2025-01-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix rounding in 1/# conversion to integer (e.g. "1/2 to 0.99")
2025-01-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Always use four digits for year in date (e.g. "0064-07-18" instead of "64-07-18")
* Support input of date using dd-mm-yyyy format
2024-12-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix solving of x^4-4x^3+10x^2-12x+1=0, and similar, in exact mode
* Use hours or minutes as default unit for conversion to time unit of expression with time format but no units (e.g. "0:00:12 to s")
2024-12-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix dual/auto approximation when unable to find exact solution to equation
* Fix unability to find approximate solutions to some high degree equations (e.g. "x⁴ − 4x³ + 10x² − 12x = −1")
2024-12-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix terminal columns and rows when piping/redirecting input (call rl_initialize() even if readline() is used)
2024-12-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add factor() function (returns integer or polynomial factors in a vector)
* Fix automatic variable detection in select()
2024-12-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* a(i) and a[i] syntax (the latter with restrictions for a) for element in vector
* Set ans variable to solution(s) of equation (as if solve() were used)
2024-12-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix compilation without readline
2024-11-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix ans variables with calculate as you type activated
2024-11-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add plot() function example, and support expression in y=f(x) format
2024-11-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix test of equation solution in some cases (fixes "sqrt(x-1/x)+sqrt(1-1/x)-x=0" when approximation is not exact)
* Fix current value for "help set approximation" when approximation is exact but auto/dual approximation is not reset (after "exact" command)
2024-11-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Option to specify number of displayed significant digits, instead of using precision (if PrintOptions::max_decimals < -1, digits = -max_decimals)
2024-11-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve decision to automatically convert unchanged quantity with unit
* Fix segfault with very large integer raised by very large integer (integer length multiplied by exponent overflows long long int), e.g. "fs^EiK"
* Fix wrong output of converted unit with non-numerical exponent in some cases (e.g. ft^x converted to m without expansion)
* Improve calculation of formatted string length (for filtering of multiple results in Calculator::calculateAndPrint())
* Remove "timed out" alternative results in Calculator::calculateAndPrint()
* Place "approx." on same line as value (instead of as equals sign) in qalc
* Display "aborted" for long aborted result in qalc
2024-11-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix case conversion of µ to M and similar (compare initial text string when converted back to lower case)
2024-11-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add multilimit() function
2024-11-06 Stefan Gerlach <stefan.gerlach@uni-konstanz.de>
* Fix issues building with MSVC
2024-11-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix spacing after implicit mulitplication interpretation question in qalc
* Fix formatting when commands/expression is read from file before interactive mode
2024-10-27 Marko Zajc <marko@zajc.tel>
* Add triple() function
2024-10-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix clear using Ctrl+L when input line is not empty
* Improved detection of charsets other than UTF-8
2024-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add calculate as you type (disabled by default) to qalc
2024-10-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve ability to abort matrix functions (e.g. identity() with large argument)
2024-10-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not show warning for logarithmic ratio unit, with quantity, as function argument
2024-09-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix inability to abort randpoisson() with very high rate value
2024-09-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix crash with empty vector in plot function, e.g. plot([])
2024-09-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not show single input decimal number as only combined fraction if fraction format is set to dual
* Apply fraction format also for integers if set to percent, permille, or permyriad
* Add (hidden) support for percent, permille, and permyriad fraction formats in qalc
2024-09-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault with recursive (self-referencing) function
2024-09-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix save definitions option
* When questions are avoided (when reading commands/expression from file or in result only mode), create temporary objects for "variable" and "function" commands, do not ask before replacing object, and fail without question for illegal names
* Avoid asking questions when reading commands/expressions from file before interactive mode
* Fix line break for output from command line expression or file, before interactive mode
* Update "exp" option documentation to reflect that custom negative values are allowed
* "unkeep" command (reverse of "keep")
2024-09-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove unnecessary calculation for output of integers with non-decimal number base (fixes delay with very high precision)
* Fix input of negative exponent in scientific e notation with rpn syntax
2024-09-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add nmi symbol for nautical mile
2024-09-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not show single input decimal number as fraction by default if small or large enough to be displayed using scientific notation
2024-08-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support abbreviations for scientific (sci) and engineering (eng) as options for scientific notation (exp)
2024-08-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix superfluous "did you mean..." warning for two functions with parenthesis without separator (e.g. "atan2(a,b)atan2(c,d)")
* Fix definite integral for 1/sqrt(1-x^2), with lower limit <= -1 and/or upper limit >= 1, and similar (temporary workaround)
2024-08-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix parsing of 1°2'3" as 1°+2'+3" (and similar)
* Update nounit() function description
2024-08-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add Calculator::parseToExpression()
* Minor fixes for "to" conversion in Calculator::calculateAndPrint()
2024-07-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add free_thread_caches() function
* Place n and C last in variable isolation priority order
* Fix interpretation of mH₂O, and related units with Unicode subscript, in qalc
* Fix memory leaks
2024-07-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix saving of percentage interpretation in qalc
2024-07-09 Marko Zajc <marko@zajc.eu.org>
* Disable load() and export() functions when --disable-insecure compile option is enabled
* Fix a potential segfault when freeing DataObject
2024-07-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve compatibility with MSVC (including replacement of variable length arrays)
* Show error for unrecognized command line options when expression is separated from options by "--"
2024-07-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix Calculator::reset()
2024-07-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve handling of "where" expression when variable name is placed after inequality symbol
* Improve handling of "where" expression in exact mode
* Improve removal of n in exact mode
2024-06-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Return n >= a + 1 for n > a, and n <= a - 1 for n < a, if a is an integer (and n represents an integer)
2024-06-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Always return false for 1/f(x)=0 (not f(x)=infinity)
* Do not solve ln(f(x))=-infinity
2024-06-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add therm and thermie units (IT, ISO, and U.S.)
* Use exact Btu relation
* Use symbol "cal" for thermochemical (instead of international table) calorie
* Add IUNS calorie
* Fix input of scientific E-notation using lowercase e in numbers using concise interval notation, in expressions
2024-06-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Always allow "ignore comma" option (will change default decimal separator if not dot), and show more informative error message for "ignore dot" if decimals separator is dot
* Do not mark decimal separator question as asked after percentage calculation has been asked
2024-06-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add MathStructure::representsFinite() to improve handling when unknown if value is real or complex
* Fix "bit width" and "signed integer" arguments in setbits()
2024-06-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Preserve allow_infinite parameter for recursive comparison in MathStructure::equals()
* Return true for infinity multiplied by zero in MathStructure::representsUndefined()
* Add recursion counter to MathStructure::isolate_x() and MathStructure::isolate_x_sub() (variable isolation) to avoid stack overflow
* Return true if both text strings are empty in equalsIgnoreCase()
* Fix parenthesis added in front of multiplication sign in some cases
* Use less strict rules when comparing with previous expression (to avoid infinite loop) when isolating variable, in MathStructure::isolate_x_sub(); * Do not apply x+x^(1/a)=b => x=(b-x)^a if (part of) x represents undefined
2024-06-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix negative-size-param (crash) when a variable name/symbol with more than 20 characters is used in "where" expression
* Fix approximation mode changed with AUTOMATIC_APPROXIMATION_SINGLE in calculate_dual_exact (affects calculate-as-you-type in qalculate-qt)
2024-05-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update values of physical constants with CODATA 2022 values; Change title and names/symbols of weak mixing angle (prepend "sin2" to theta variants and change order)
2024-05-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Return exact negative integers in log10()
* Decrease (potentially) number of false negatives for represents... functions
* Add descriptions for is... and represents... functions
* Fix RoundFunction::represents...
* Check for exact solution equaly simplified as approximation value in calculate_dual_exact when approximation is AUTOMATIC_APPROXIMATION_SINGLE
* Fix confusing behaviour of complex forms other than rectangular in some case with equalities and inequalities
2024-05-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove n from equation solution if possible using assumptions of x
* Fix auto/dual approximation with "where" expression
* Fix Number::getCentralInteger()
* "n > a" equals "n >= floor(a)", if a is not an integer, and equivalent for other inequality operators
* Fix handling of where expressions with multiple inequality statements for a single variable, e.g. "where x>0 and x<10" (parsed expression were as aborted, and calculated value always 1)
2024-05-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix potential (but unlikely) segfault when integrating expression with abs() and empty ln()
* Add allroots() function
* Fix unnecessary parenthesis (with wrong color for closing bracket) around unit with exponent for colorized HTML output (affects qalculate-qt)
2024-05-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add additional names/symbols (tr,pla,rev,revolution,revolutions,cyc,cycle,cycles) to turn unit
* Add rpm unit (= turns/min)
2024-05-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix qalc not exiting after factorization in non-interactive mode
2024-05-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix a^(f(x))=a^(b*g(x)) where b=2 or b=3
2024-05-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Avoid potential issues with equations and inequalities caused possibly modified comparison type property (primarily potentially resulting in AND instead of OR and vice versa)
* Fix multiplication sign after exponentiation factor for unformatted output without unicode exponents
2024-04-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix "(ax+1)^n > 1" and "(ax+1)^n >= 1", where n is even and a is not 1, returning false
2024-04-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix -Wdocumentation warnings
2024-04-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ask for the desired interpretation the first time percent addition is used (e.g. 100 + 10% equals 110 or 100.1)
2024-04-21 Fishhh <hubert.gluchowski19@gmail.com>
* Fix Number::equals(0, ..., true) when number is infinite (also affects MathStructure::equals(), MathStructure::replace(), and MathStructure::calculateReplace() and replace() function)
2024-04-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not show error for 2nd argument with unknown variable in root() function
* Fix precision for approximate data set number values, without uncertainty explicitly specified, with positive scientific e-notation exponent
* Ignore two's input setting for hexadecimal floating-point literals using 0x...p... notation
2024-04-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add Sun to planets data set
* Add solar radius, mass, and luminosity as units
2024-04-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for column vector in if() function
2024-04-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Relax conditions for (x^a)^b=x^(a*b) and x^a*x^b=x^(a+b) when complex numbers are deactivated (fixes segfaults)
2024-04-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for solving root(a, x)=b (requires rational value for ln(a)/ln(b))
* Use parentheses for exponent using scientific notation (with power of 10)
* Add checkAvailableVersion() variant returning package URL
2024-04-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add multiples() function (returns multiples of a number within specified range)
2024-04-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add powertower() function
* Add recursive depth limit to avoid running out of stack memory (causing segfault)
2024-03-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Solve equations containing if() function
* Fix awg(x)=... and awgd(x)=... when default assumption type is not real and fix solve() with these equations
2024-03-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support integer factorization of integers in matrix/vector, and of numerator and denominator in rational number
2024-03-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix setbits()
2024-03-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not apply "read precision" setting to integer exponents for values with units
* Change from line to point (or dot) plot style for data with many discontinuous points
2024-03-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Replace special colorize values, for selection of Unicode exponents, with different use_unicode_signs values
* Use Unicode exponents, in MathStructure::print(), if format is false, even if tagtype is not TAG_TYPE_TERMINAL
* Fix Unicode exponents with number bases < 10
2024-03-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve parsing of text arguments - fix quotation mark replaced by feet or inches and % replaced by percent variable, remove quotation marks when parts of argument are quoted separately (a "b" "c" = "a b c"), and do not replace quoted curly brackets in expression unless necessary
* Do not use sexagesimal output format for very large numbers (when scientific notation is necessary for integer part) and reduce maximal number of decimals (for last position when previous positions is non-zero)
* Handle case when initial guess results in division by zero, and avoid unnecessary error messages, in newtonsolve()
2024-02-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix BTC exchange rate from coinbase, if available from other source, not used before restart after exchange rates update, and do not mark BTC as hidden (places the unit in submenu in GUIs)
2024-02-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support "where" statements, without "where", before main expression, e.g. "a=2, b=3; a^b"
2024-02-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Change handling of "where" expression (create temporary variables) to allow previously undefined variable names and to avoid confusing output of parsed expression (e.g. redefined "c" was displayed as SpeedOfLight)
2024-02-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Detect spelling errors in qalc options (when using set command)
2024-02-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Change handling a vectors in multiple function arguments (of non-vector type) - return vector instead of matrix, require equal number of elements, and use the same vector index for all argument for each function instance (e.g. atan2([1 2], [3 4]) = [atan2(1, 3) atan(2 4)]
* Set handle vector property by default, for text, date, and boolean arguments, and for arguments, in global non-builtin functions, without specified type
* Enable parsing of vectors for text arguments
* Add foreach() function (simplified for function, using vector instead of counter)
* Add setbits() function
* Add flip() function (changes order of elements in vectors and matrices)
* Add "binary bits" option in qalc
2024-02-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add LightSecond, LightMinute, and LightHour units
* Add integerDigits(), digitGet(), and digitSet() functions
* Add more rounding methods and replace PrintOptions::round_halfway_to_even (and truncate time zone value hack) with PrintOptions::rounding
* Add PrintOptions::duodecimal_symbols (replace time zone value hack)
* Replace PrintOptions::lower_case_e with PrintOptions::exp_display and add option for scientific notation without E (10^x)
* Add ParseOptions::binary_bits (replaces non-boolean values for twos_complement and hexadecimal_twos_complement)
* Add keep command, which makes variable or function non-temporary, in qalc
2024-02-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Check for potential spelling mistakes in unrecognized qalc commands
* Show error messages for command without argument, if not a reasonable expression, even if "/" is not used
2024-01-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for hexadecimal floating-point literals using 0x...p... notation (0x1.4p3 = 0x1.4 * 2^3 = 10)
* In dsolve(), assume that C is real if y is (fixes dsolve(diff(y, x) = y)), and, if y cannot be isolated completely, return resulting equation in solve() function (e.g. dsolve(diff(y , x) = y)= solve(ln(y) = x + C, y))
2024-01-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for a...b syntax for sequence (vector) of integers
* Add support for j:k (for sequence of numbers with increment 1), and j:i:k (with increment i) syntax
* Add colon() function (used by new syntax)
* Use parentheses for number with scientific notation in more cases
2024-01-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not list reactivated global objects when using "list" command (without argument)
* Recognize function name with parentheses appended in argument of "delete" command (useful for deletion of function with same name as variable or unit)
* Add bitset() and bitget() functions
2024-01-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support scientific notation using 10^x instead of e notation for non-html output and in qalc
2024-01-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow specification of numbers of bits for two's complement input
* If number of bits are not enough for output of binary or hexadecimal number, use default, instead of minimal, number of bits
2024-01-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Detect potential spelling errors in suspicious expressions
2024-01-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix "set cplxform cis"
* Fix conversion to angle unit for complex angle, cis and polar forms
* Improve output of complex angle form in some cases
* Do not display exact result for dual approximation if parsed expression differs (can occur in some cases with conversion to angle unit), and in some cases where the only differences is how exact numbers in function arguments are
2024-01-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow multiple options, separated by semicolon, with a single --set (-s) command line argument
2024-01-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* lambertw(x*e^x, 0)=x if x>=-1
2024-01-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix -no... command line options when using double dash, e.g. "--nocurrencies"
* Avoid radian unit missing error message with --nounits command line option
* Exit with error status code if command line expression generates error
2024-01-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow values higher than 1 (true) to specify line width of plot grid
2023-12-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for "decimals" "to"-conversion (display as decimal fraction)
* log(x, 1) is always zero when x has non-zero imaginary part
2023-12-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix log(1, 1)
2023-12-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve handling of zero solution and initial guess in newtonsolve() and secantsolve(), and check validity of solution
2023-12-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix "to"-conversion to prefix and add "prefix" conversion option (for optimal prefix)
* Fix parsed expression repeated in result with some functions
* Allow omission of equals zero in solve() function
* Convert to simple fraction if value only contains integers, when converting to fixed denominator
* Improve handling of text arguments with default value consisting of two double quotes (empty string)
2023-12-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in newtonsolve() and secantsolve() when equation does not contain variable
* Algebra and calculus functions represents scalars if all arguments do
2023-12-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for two's complement input (short settings "twosin" and "hextwosin") in qalc
* Fix current value of hextwos in mode help
2023-11-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix BTC exchange rate (data now seem to always use USD)
* Replace exchangerate.host (now requires API key) with currency-api (https://cdn.jsdelivr.net/gh/fawazahmed0/currency-api@1/latest/currencies/eur.json)
2023-11-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve formatting of base unit(s) in unit information in qalc
* Fix plural name of U.S. survey rods
* Improve output of defs2doc
2023-11-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ignore spaces when converting text string to integer
2023-10-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Display all exponents 0-9 using Unicode superscript characters (not, as before, only for units), in qalc (using TAG_TYPE_TERMINAL), if these are the only exponents in the expression (behaviour can be altered using uniexp option)
2023-10-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add history command, listing expression history
* Ignore underscore in number
2023-10-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add fraction formats for output using percent, permille, and permyriad
* Add additional year definitions as units
* Improve handling of (x*sqrt(x)-y*sqrt(y))/(sqrt(x)-sqrt(y))=x+sqrt(x*y)+y
2023-10-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for specifying a fixed denominator for display of fractions
* Fix case insensitive comparison for strings with more than two or more consecutive Unicode characters in qalc
2023-10-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix parsing of case insensitive object name ending with Unicode character when followed by another Unicode character in expression, e.g. микрометр
2023-10-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix output of value converted to unit expression with numerical multiplier in denominator, e.g. L/(100 km)
2023-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault (infinite loop) when trying to solve (x*sqrt(x)-y*sqrt(y))/(sqrt(x)-sqrt(y))=x+sqrt(x*y)+y
2023-10-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix asin(x)=a, acos(x)=a, and atan(x)=a, when a contains an angle unit and default angle unit is set
2023-09-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix Calculator::hasWhereExpression()
2023-09-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Return gcd of numerators divided by lcm of denominators in gcd() with non-integer rational numbers, and vice versa for lcm()
2023-09-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix display of matrices and vectors with complex number form other than rectangular
2023-09-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix besselj() and bessely()
2023-09-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Require that duodecimal number, entered using 0d... syntax, contains at least two digits, to avoid conflict with decibel units (e.g. 0dB)
2023-08-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix for title, ylabel, and xlabel options with whitespace in value, in plot() function
2023-08-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix and improve to Calculator::findMatchUnit() (fixes matching unit for m/s)
2023-08-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault with curly brackets in expression
* Apply automatic unit conversion after conversion to variable
2023-08-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix "E" at end of longitude replaced with "e"
* Add derived units for kJ, kcal, and kcal/g
2023-08-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Concise uncertainty input (disabled by default)
2023-07-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Round high precision intervals enclosing integers for integer arguments (excluding order argument of besselj() and bessely())
2023-07-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for input of relative uncertainty using percentage (e.g. "5+/-2%") and output of interval using relative or concise (e.g. "1.2345(67)") notation
2023-07-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Set unicode property of object name automatically (does not affect usage in definitions file)
* Keep prefixes for variable value in save() function
* Fix numerical value of lower and upper options in help text for interval display setting
2023-07-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix fibonacci() for non-integers
* Fix erroneous simplication of exponentiation when power is multiplication and base is a rational number < 1 in some case (e.g. "fibonacci(fibonacci(2))")
2023-07-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for specifying position of sign bit in floating point functions
2023-07-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use international foot as base unit for rod, and add U.S. survey rod unit
2023-07-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add units for Electric Dipole Moment (C*m and Debye)
* Add units for electrical elastance (F^-1, Daraf, and V/C)
* Add and N/C as alternative unit for electric field strength
* Optimize rest of unit expression when converting to partial (insufficient) expression (e.g. 18MA×100ns to J)
2023-07-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Replace occurrences in variable values in replace() function, when original expression contains unknown symbol/variable, and for "where" replacement
* Fix numerical integration when variable is present within other variable values
2023-06-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix errornous determination of unit compatibility for equalities with unknown variables
* Fine-tune detection of approximate units when deciding to calculate uncertainty propagation or not
2023-06-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add function, kron(), for Kronecker product
* Add constants for Pauli matrices
* Add radius to planets dataset and update other properties
2023-06-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix "help set OPTION" when OPTION is an option name supported in addition to the standard name and abbreviation (e.g. "help set parse")
2023-06-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix incomplete calculation in tan() with try exact approximation
2023-06-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More consistent addition and removal of angle unit from function arguments
* Always append radians to return value (even if zero) in relevant functions when default angle is none
* Do not apply x^(ab)=(x^a)^b rule if ab has unit
2023-06-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in some cases when multiplying single column matrix with empty vector
* Fix segfault when MathStructure is deleted after Calculator, and in destructor of calculated DynamicVariable
* Fix besselj(0, 0)
* Do not use Tamil symbol by default for Sri Lankan rupees
2023-06-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Change order of operations to place entrywise and ordinary operators on the same precedence level
* Always interpret ./, .*, and .^ as entrywise operators if user intention is unclear
2023-06-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not calculate functions in arguments of functions that are not differentiable, after function calculation fails, before uncertainty calculation (improves efficiency)
* Do not save mode on exit if "-defaults" command line switch where used
* Show expression of subfunction (instead of index) in function info
* Remove duplicated "Units" heading in mode list
2023-05-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix 0/0=0 (do not return true) and output of 2/0 (and similar)
2023-05-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix newtonsolve() and secantsolve() not returning when no solution can be found (fixes rate() function), and improve speed in some cases
2023-05-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix potential memory leak when loading unit data saved with version < 0.6.3
2023-05-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for custom default angle unit, e.g. turn, arcsec, arcmin
* Append default angle unit (instead of always radians) when converting value without unit to angle unit
2023-04-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix element() function for vector when column number is specified (non-zero)
2023-04-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve parsing of element-wise operators with comma as decimal separator
* Fix segfault in some cases with curly brackets in expression
2023-04-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix some memory leaks
2023-04-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when conversion to base units fails because of aborted calculations
* Do not try to calculate norm() and magnitude() for matrices
2023-04-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix rref() with different units for different elements
* Fix segfault trying to solve cbrt(x)^(1/3)-x=0 (and similar)
* Fix erroneous simplification of sin(x)^2*y-cos(x)*sin(x)^2*y (and similar)
* Fix division and exponentiation of scalar by matrix/vector, e.g. 4./[8 4.5]
2023-04-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in function assignment with equals sign (e.g. F()=...), when an object with the same name already exists
* Improve abortion of calculations
* Replace temporary variables created during calculation after abortion
* Fix segfault with empty vector in uncertainty calculation
* Fix segfaults in some corner cases
* Fix some memory leaks
* Fix internal id does not exist error (primarily in some cases with functions without parentheses in matrices)
2023-04-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in handling of vector variable with uncertainty
* Fix abortion with low max calculation time in qalc
2023-04-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not make any difference between row and column vectors in magnitude(), norm(), and dot() functions
2023-04-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix abbreviation for variable units (varunits) command in information (within qalc and in man page)
2023-04-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix order of argument titles in csum() function
2023-03-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add modular exponentiation function, powmod(), with support for calculation of modular inverse
2023-03-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix a^n mod b when n is negative
2023-03-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in multisolve() and improve removal of equal solutions
2023-03-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support elements with units in rref() and rk()
2023-02-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Always show value of local variables using current output options, in qalc
2023-02-23 Jules Bertholet <julesbertholet@quoi.xyz>
* Add "thou" name to mil unit and make it default and reference
* Add plurals to old French units
2023-02-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve detection of default language on Windows
2023-02-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Make pv(), fv(), and rk() case sensitive, and remove aA abbreviation from Abampere, to avoid conflicts with prefix + unit
* Allow "prefix" (unlocalized) as alternative for pref/prefixes qalc command
2023-02-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix conversion from ounce (interpreted as fluid ounce) to litre with prefix
* Use max/min preferred for unit ordering (replaces explicit ordering of N*m and W*s)
* Support "help set [OPTION]" syntax and show "unrecognized option" message on help command failure, in qalc
2023-02-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not set automatic prefix if resulting multiplier is < 1 or >= 1000, with some exceptions (units which specifies max or min preferred prefix, e.g. km)
* Default prefix unit property (use for gram, and few other units, instead of hardcoded value)
* Do not use recently introduced SI prefixes (R, Q, r, q) automatically by default
* Set zero max preferred prefix for second
2023-02-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use value of fourth argument in genvector() as step size by default if 1 (default), negative, or non-integer, and value of sixth argument is -1 (default)
2023-02-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Prefer Nm (torque) over J when the result is a vector with three components
* Fix unit order for Nm and Ws
* Always use current number base in both base and exponent in output of scientific notation
* Indicate correct number base in subscript (in html formatted output) when output in original base fails
* Do not show multiplier if exactly 1, in html output of scientific notation
* Fix parsing of scientific e notation when the number is extremely large and exponentiation fails because of floating point overflow
2023-02-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use Unicode symbol for minus in scientific e notation
* Allow the same variable left and right of the equals sign (e.g. var=var+2), in variable assignment without colon, if the variable exists and the previous value is known
2023-01-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add "amp" abbreviation to ampere unit
2023-01-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Don't show anything on empty input in qalc
* Set zero as max prefix for litre
* Fix prefix selection in denominator when multiplier is higher than the value of the largest prefix
* Make sure that prefixes are stored in correct order
2023-01-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add min and max preferred prefix properties to units, and use kilo as max for meter, gram, and zero as min for byte, and bit)
2023-01-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add option to change symbols used for output of digits 10 and 11 in duodecimal numbers. Default digits are now A and B, instead of ↊ and ↋ (or X and E)
2023-01-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix reactivation of global object after deletion of conflicting object
2023-01-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use "help [OPTION]" to display description for a single set option, in qalc
2023-01-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* EUR has replaced HRK as currency of Croatia
2022-12-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use json exchange rate data from exchangerate.host, mycurrency.net, or floatrates.com (try in mentioned order), as secondary exchange rates source
2022-12-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix unit tests (ordering in output changed)
2022-12-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Check that output of command, in command() function, is a reasonably sane expression
* Fix countTotalChildren() with count_function_as_one set to false
2022-12-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add m/s^3, m/s^4, m/s^5, and m/s^6 as derived units (improves automatic unit conversion)
2022-12-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix randuniform()
* Fix dual approximation with random number functions
2022-12-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in qalc when set command option and value contains more than three words
* Fix errornous calculation of arg(x^n) in some cases (when transformed to arg(x)*n without mod 2pi)
2022-12-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use standard form (sorting) for polynomials
2022-12-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow non-numerical arguments in atan2()
2022-12-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Set message print options after unicode setting has been updated using u8 command line option (fixes signs in gnuplot legend)
2022-11-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add new SI prefixes (R, r, Q, q)
2022-11-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix automatic/dual fraction format after conversion (e.g. "8 to score")
2022-10-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Always parse element-wise operator as element-wise function, even if arguments are scalars (fixes variable substitution when variable is vector)
2022-10-27 ioio85 <ioio85@gmail.com>
* Add units ounce force (ozf) and rack unit (U)
2022-10-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix order of user edited global units and look for activated units first for base unit (do not use deactivated global unit)
* Use current status of limit implicit multiplication setting during parsing of conversion expression
* Make unit added to original expression for unit conversion more consistent
* Do not use MathStructure in parentheses property during parsing (simplifies logic and fixes inconsistently displayed parsing of "7d 5h" and similar)
* Add hr and hrs names to hour unit
2022-10-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix genvector() with negative step size or expression as step size, and allow variable in step size
* Fix genvector() with expression as number of steps
* If object name does not match full name string in expression, check for complete match with prefix plus unit (fixes Gyr)
* Make MYR currency case-sensitive to fix conflict with Myr (megayear)
2022-10-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Conversion to any type of expression (if ordinary conversion fails, try simple division)
* Fix milli- and centimeter of water units
2022-10-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix slow conversion to optimal or base units of uncertainty with units inside value and/or error
2022-10-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix errornous calculation of expressions with physical constant with unit prefix, and unit with the same physical constant in relation to base unit, with interval calculation set to interval arithmetic
2022-10-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when function arguments are provided in a vector and the size of the vector is greater than or equal to the minimum number but less than the maximum number of arguments
* Fix segfault in mod/rem function with 1/0 as first argument
* Fix segfault when solving equation with signum() function
2022-10-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when first argument in if() function is vector, but the second argument is not
* Improve output of unformatted expressions with negative, rational (if output as fraction), and/or complex numbers
2022-10-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Replace new line with white space when saving history in qalc
2022-10-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add meter of water and related pressure units
* Add more derived flow rate units
* Fix slow non-abortable calculation of addition of rational to extremely large floating point number
* Fix segfault when calculating 2^((10094431424/18310546875)*y^3*z^-1*x^15)
* Fix segfault when calculating cbrt((cbrt(3)-1)^2 * cos(x)) and similar
* Fix exact calculation of re((a*i)^(n/2))
2022-10-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault during calculation of uncertainty propagation for some expressions with approximate unit relations
* Replace internal operator characters in unquoted text argument
2022-09-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Proper support for uncertainty propagation in total(), sum(), product(), and for() functions
* Support for vectors and matrices in uncertainty propagation calculation
2022-09-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve parsing of quotation marks as feet/inch or arcmin/arcsec, and % as percent (avoid parse of s" as sin and similar)
* Include +/- statement in function argument without parentheses
* Set prefix for units in nested results in more cases
* Fix potential (but unlikely) segfault in parsing of unit expression (as CompositeUnit)
* Add additional numbers for set arguments in help output and man page
* Update internal exchange rates used tracking to use bit flags
* Avoid truncation of long values in the middle of a Unicode symbol, in definitions list in qalc
2022-09-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in Calculator destructor (data sets, which are a type of function, were deleted twice)
2022-09-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* errorPart() function
* Consider empty vector as failure in genvector()
* Return values for approximate variables in exact mode in dimension() and elements()
2022-09-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* upperEndpoint(), lowerEndpoint(), and midpoint() / valuePart() functions (for intervals and uncertainties)
* Fix exact calculation for arguments with approximate vector variables (fail instead of creating a vector with a single element)
2022-09-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not convert function arguments which do not allow units and do not recalculate functions with converted arguments (fixes "arcsin(0.5+/-0.1) to deg" in exact mode)
2022-09-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in some corner cases when calculating absolute value of imaginary number
* Fix use of random numbers in iterative functions
* Replace curly brackets with parentheses
* Fix conversion to optimal unit of subexpression
* Fix prefix after conversion to optimal unit when the optimal unit includes a prefix
* Fix writing beyond end of array during exchange rates check in some cases (results in activation of old style matrices)
* Fix automatic reactivation of deactivated global object (e.g. after deletion of user variable), if a function with the same name exists (e.g. reactivation of day unit is blocked because of the days function)
* Add unit examples when asking user for interpretation of implicit multiplication
2022-08-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use standard formatting for quantities with units in output of parsed expression (with PrintOptions::preserve_format)
* Avoid parsing of implicit multiplication as nested multiplication
2022-08-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add primePi(), primes(), nthprime(), nextprime(), prevprime(), and isprime() functions
2022-08-26 NorwayFun <72336380+NorwayFun@users.noreply.github.com>
* Georgian translation
2022-08-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Avoid ambiguous implicit multiplication warning in more cases involving units
2022-08-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix a*b^x+cx=d when a and c have different signs and d is non-zero
* x+0^x=0 is not solvable
* Fix unevaluted ln() and wrong combination of addition of ln() with negative arguments in (-a)^x*(-b)^x=c
* Fix scientific E notation with sign in argument when function is used without parentheses
* Reset interval calculation status after forced abort;
2022-08-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Recursively create qalc configuration directory
2022-08-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for var=a syntax (quotation marks required for now) for variable assignment with calculated value (as save(a, var,,,1))
* Use x value for variable assignment with precalculated equation
* Do not allow colon in names
2022-08-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Replace ounce with fluid ounce during conversion from or to volume unit
2022-08-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix lambertw() for values very close to zero, e.g. 1e-40 (returned approximately zero instead of 1E-40)
* Fix "+" ignored after "E" in number bases where "E" is a digit
* Increase time beore forcibly aborting calculation if precision > 1000, and do not show report as bug message if precision > 10000
2022-08-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in some cases with sgn() function with zero arguments
* Fix segfault when formatting units in some corner cases
* Initialize plural property in MathStructure class (caused wrongly displayed plural form of unit name in some cases)
2022-08-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix aborting of plot data generation in some cases
* Return original value for argument representing integer in ceil() and floor(), trunc() and round() functions
* Improve efficiency of for(), sum() and product() functions in some case
2022-07-31 Adrià Arrufat <1671644+arrufat@users.noreply.github.com>
* Add clip() function
2022-07-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Solve a^x+b^x+...=c (exact or approximate, for real x) in more cases
2022-07-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix handling of Unicode powers for adaptive parsing of units (e.g. parse 10m/s² the same as 10m/s^2)
2022-07-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not set precision higher than allowed by MPFR_PREC_MAX or INT_MAX (show actual precision set in qalc)
* Increase speed (potentially very noticably when using very high precision) of calculation (determining precision from interval) and output (of floating point numbers), by using mpz_sizeinbase instead of mpfr_log or mpfr_log10
2022-07-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Convert rational number to floating point in squaring and multiplication if the resulting numerator or denominator has more than 1 000 000 digits, as previously in exponentiation with powers other than two
2022-07-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Truncate number in output of parsed expression and end with ellipsis if unable to display all decimals
* Always display all digits before decimal separator in output of rational number in parsed expression
* If parsed expression is approximately displayed, show approximately equal symbol before expression, in qalc
2022-07-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Functions for fixed point (Q format) conversion
2022-06-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve remainder/modulus for numerators with large exponents
2022-06-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Free all memory when Calculator object is deleted, and avoid memory leak in DynamicVariable
2022-06-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault with (a+b)^-1 in unit expression, after "to"
2022-06-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* "clear history" command and option to clear (not save) history on exit
2022-06-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix potential issues (e.g. with subtraction of seconds from date) when finding previous leap second (was reading bool beyond end of array, causing issues when not false)
2022-05-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix addition of unit to expression without unit (when trying to convert to a unit) in exact mode
2022-05-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix limit of floor(), ceil(), and trunc()
2022-05-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show single digit suffixes using Unicode subscript, in qalc
* Make names with a single character followed by digits case-sensitive with suffix by default
2022-04-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Polar plot style
2022-04-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* plot() arguments for specification of plot options (in any order after the third argument)
2022-04-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Binary-coded decimals (BCD) - input and output bases, and bcd() function
2022-04-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use capitalized names with underscores removed in output (e.g. "FineStructure" instead of "fine_structure")
* ExpressionName::formattedName() for handling of underscores (capitalization, html suffixes, removal)
* Alternative CompositeUnit::print() with formatting options
* Include names with underscores removed when searching for active objects or checking for conflicts
* Deactivate support for names without underscores for completion only names
* Fix activation of objects after object that caused deactivation is deleted
* Respect require_translation property
* Mark l_N, oz_t, lb_t, and rad_radioactivity as using prefix
2022-04-20 Jules Bertholet <jules.bertholet@gmail.com>
* Add additional information units (nat, trit, OctalDigit, hartley, nonet, declet, TiB, TB, EB, PB, petabit), and additional names to existing information units (shannon, o, etc.)
2022-04-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Set normalized sinc() variant by changing default value of second (non-existing) argument to "pi", or using "set sinc 1" in qalc
* Ask the user for the desired sinc() variant (unnormalized or normalized)
* Show warning when log() is used with a single argument, and always show second argument of log()
2022-04-19 Jules Bertholet <jules.bertholet@gmail.com>
* Add traditional numbers (locale specific): dozen, BakersDozen, score, LongHundred, gross, LongThousand, GreatGross
2022-04-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Option to plot real and imaginary parts separately (determined by allow_complex in plot() function and on by default in other cases)
* Look for points where plot changes direction (derivative is zero) and include in data
* Avoid extremely slow calculation of gamma for negative intervals
* Do not return interval in newtonsolve() and secantsolve() if interval arithmetic is deactivated
* Remove Cyrillic c name from KGS
2022-04-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve plot precision for real values before and after non-real values
* Variable spacing of x values in plot
* Fix plotting of derivatives and integrals
2022-04-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update and add (m^3/s, cumecs, L/s, acre*ft/day, Sverdrup) flow units (volumetric flow rate)
* Do not ignore deactivated allow complex for fractional exponents with negative bases
2022-04-12 ioio85 <ioio85@gmail.com>
* Add cfm, gpm and gph units
2022-04-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Accept more than two arguments in gcd() and lcm()
* Interpret a single vector argument as a list of arguments if function requires more than one argument
2022-04-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix randpoisson()
2022-04-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve optimal unit selection for unit expression with corresponding composite SI unit (e.g. W/m^2)
* Add special case for conversion of units of gravitational constant to optimal unit (do not convert to Gy)
* Fix segfault when converting expression without unit in some cases (e.g. "5 to V/1")
* Make MathStructure comparison with integer more efficient
2022-03-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not display error at all when BYN fails to update during complete exchange rates update, and mark BYN as hidden (moves it secondary menus)
* Save temporary functions and units in Calculator::saveTemporaryDefinitions()
2022-03-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix output of (1+f(x))/n
* mHg unit (allows use with prefixes other than milli)
* Always display abbreviated unit name (symbol) with abbreviated prefix (when unit only has short name)
2022-03-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Save definitions on exit (only) if definitions has changed regardless of interactive mode status
* Set variables and functions created using save() as modified
2022-03-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Restrict use of reciprocal in unit conversion, e.g. invert in "5m/s to s/m" (= 0.2 s/m) but not in "500/lb to g" (= 1.1/g)
2022-03-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not interpret dot as dot operator if preceded and followed by dots
2022-03-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show successfully updated exchange rates sources in error message when full update has partially failed
* Show title of currency in update exchange rates error message for single currency sources
2022-03-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Replace *, /, and - with the corresponding operator symbol (determined by message print options) in misplaced operator error messages
* Fix error message for a*/b (and similar)
* Do not transform original expression (e.g. multiply by base unit if unit is missing), and set correct parsed expression conversion argument, during conversion to unit expression provided in to_struct argument to Calculator::calculate() (primarily relevant for conversion view in qalculate-gtk)
2022-03-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault (when compiled with -D_GLIBCXX_ASSERTIONS) with local digit grouping when separator is empty (e.g. with ignore locale)
2022-02-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use narrow non-break space instead of thin space as digit separator for reasonably short numbers and between quantity and unit (if thin space is digit grouping separator)
* Improve handling suggestsQuotes() argument property
* Do not use class="symbol" when quotation marks are used (fixes history layout errors in qalculate-gtk)
* Do not remove thin space in print_dual (as it's used in qalculate-qt)
* Add safeguards against extremely large vectors causing freezes and crashes
2022-02-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update austronomical unit value
2022-02-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault (when compiled with -D_GLIBCXX_ASSERTIONS) in matrix multiplication when one of the matrices has exacly one row
2022-02-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix readprec (duplicate percent) in mode list, in qalc
2022-02-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Move "approx." to same place as Unicode almost equal symbol with dual result
* Automatically remove superfluous default values from function expressions
* Return x = -infinity for a^x = 0
2022-02-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Move "approx." to same place as Unicode almost equal symbol with dual result
* Add financial rate() function
2022-02-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault with empty sqrt inside sqrt, e.g. sqrt(1+sqrt())
2022-02-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix incompletely calculated nounit(), e.g. in unit conversion
* Handle Unicode minus in conversion (disables mixed units)
* Fix saving of try exact single approximation mode in qalc
* Return x = -infinity for a^x = 0
2022-02-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Return the lowest value if there are multiple values with equal frequency in mode()
* Calculate statistical functions (e.g. mode(), min(), max(), percentile()) separately for each column of matrix (adds special handling for handle vector property in vector arguments)
* Fix duplicated right equality value in output in some cases
2022-01-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add option to disable "simplified" percentage calculations (e.g. intepret 100 + 20% as 100 + 0.2 instead of 100 * 120%)
2022-01-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Calculator::saveTemporaryDefinitions() for use in qalculate-qt when saving workspace
2022-01-21 Jakub Jirutka <jakub@jirutka.cz>
* Do not rewrite -Os to -O2
2022-01-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Parse text argument as expression if concatenate function name is found in text string
* Fix concatenate returning date
* New layout for output of result of equations, in qalc
2022-01-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support input of functions, units, and variables with underscores omitted in names (e.g. µ0 = µ_0), with some exceptions (e.g. if underscore is followed by a single character that is not a digit or a Unicode symbol)
2022-01-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Convert K, Hz, and m^-1 to J, and derived units, using conversion factor constants (e.g. 1/(550nm) to eV = 1/(550nm) * m_to_J ≈ 2.25 eV)
* Move conversion of expression without unit (e.g. 5 to ft = 5 m to ft) from user interfaces to libqalculate
* Allow use of M as 10^6 without unit
2022-01-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add hbar name (for completion) to reduced Planck constant
2022-01-12 Stephan Troyer <stephantroyer@live.at>
* Add second Unicode codepoint for µ-sign in variable names
2022-01-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not assume that char is signed
* Fix bitrot()
2022-01-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow zero (1st and/or 2nd argument) in comb() and perm(), and return zero if second argument (k) is greater than the first (n)
2021-12-27 ioio85 <ioio85@gmail.com>
* Add ksi unit
2021-12-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix Unicode superscript followed by ^ or +/- (e.g. 5²±1)
* Interpret sin⁻¹ (with Unicode superscripts) as arcsin, and similar
2021-12-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in multisolve() when initial order of equations is not optimal
2021-12-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add divisors() function
* Improve select() function
2021-12-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Nicer formatted terminal output for matrices (in qalc)
* Replace round halfway to even and truncate options, in qalc, with rounding option
2021-12-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Option to truncate (instead of round to nearest) numbers in result
2021-12-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add plastic number (ρ) constant
2021-12-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Transform vector to matrix with single row and scalar to matrix with a single row and column when a matrix is expected
* Transform matrix with single row to vector, and matrix/vector with single element to scalar
* Use time limit, instead of wait for keypress with time limit (which does not work), for slow calculations in qalc on Windows
2021-12-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Matlab syntax for matrices and vector (within square brackets, space and comma separates columns, semicolon separates rows)
2021-12-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not try to use iconv if not found
2021-12-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix MathStructure::containsType(STRUCT_UNIT, false, ?, true) for value containing data set function
2021-11-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not stop testing functions argument values after first failure
* Handle units in plot data;
2021-11-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add name "inv" to matrix inverse function (remove reciprocal function) and add support for scalars
2021-11-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix transformation of a*sin(x)+b*cos(x) to a*sqrt((b/a)^2+1)*sin(x+atan(b/a)) (primarily fixes some equations)
* Add representsNonMatrix() and representsScalar() to many builtin functions (do not rely on representsNumber() which might return false for unknown variables - this fixes limit() unpredictability in some cases)
* Make sorting more predictive
2021-11-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Apply same logic with separate to command, as with "to" at end of expression, when result contains no unit
2021-11-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix title of arguments > minimum argument when max arguments = -1, for builtin functions with arguments not defined in code
2021-11-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Interpret || as paralell to operator for all units, add support for Unicode paralell to symbol, and move || as paralell to parsing stage
2021-11-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add clear command, with Ctrl+L shortcut
2021-11-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add Calculator::calculateAndPrint() variant with formatting arguments
* Remove "(default)" from adaptive mode in qalc
* Localize condition expression in argument description
2021-11-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add micrometer and nanometer
2021-11-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support "--" as end of options in qalc command line
2021-11-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix pearson() and spearman()
2021-11-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Avoid precision loss on output of interval when precerve_precision is true (e.g. when saving approximate variable)
2021-10-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix display of uncompletely solved equation (equality where value on the left is not a variable) with dual approximation
* Solve x^(x^(-a))=b
* Im(-x)=-Im(x), Re(-x)=-Re(x)
2021-10-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add functions for quadratic and cubic regression (quadraticfit() and cubicfit())
* Allow nested subfunctions (use of subfunction in another subfunction)
2021-10-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Configurable SIGINT (Ctrl+C) action (in interactive mode) - by default qalc will now exit, orderly, if inactive
2021-10-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add function for RAM latency calculation
* Add function for simple linear regression
* Fix genvector() when step size requires evaluation
2021-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix "to unicode" in qalc
* Fix a%%-b (interpret %% as mod not percent)
* Add (Equilateral) at end of square pyramide function titles
* Add --defaults command line option to qalc
* Look global definitions in data and ../data first (if running from build directory)
* Change title of function category from "Regression" to "Correlation"
2021-10-18 Dani Biró <danibiro93@gmail.com>
* Unit tests
2021-10-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add vertical space option ("vspace") in qalc
2021-10-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix parsing of percentage before space (e.g. "10 - x% = 8")
* Interpret | before most operators as absolute value instead of bitwise or
2021-10-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show input/output number base in parentheses after expression, in qalc, if the base is not decimal or indicated by the number formatting, and the base was not changed by the most recent command
2021-10-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support plot functions, in plot(), that results in a vector first when evaluated (e.g. plot(entrywise(x^y, [1, 2, 3, 4], y), -5, 5))
* Use frequency as step size, in plot(), if the argument value is not an integer > 1
2021-09-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Function for drill bit size conversion
2021-09-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix errournous simplifications in some cases when incompletely evaluated numerator and denominator are passed to merge_multiplication()
* Avoid unnecessary calculations in if() function, when first argument is vector
* Output 1/2+x/2 as (1+x)/2 and similar
2021-09-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Exact values for Im((a*i)^(n/2)
* Improved simplification of radical expressions
* 1/(sqrt(a)+1)=(sqrt(a)-1)/(a-1), 1/(sqrt(a)-1)=(sqrt(a)+1)/(a-1)
* Additional exact values in tan()
2021-09-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improved exact return values for im(), re(), and arg()
* Additional exact return values in atan()
* Improved output for complex forms (primarily in exact mode)
2021-09-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve division for non-rational polynomials
2021-08-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ask the user for correct interpretation (once) when entering expression with ambiguous implicit multiplication
* Use LOCALE_CUSTOM_UI_DEFAULT on Windows
2021-08-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix "l" as symbol for liter in Swedish translations, and other potential undiscovered issues with reference name not properly case-sensitive
2021-07-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Save answer to dot and temperature questions in non-interactive mode and do not show the questions in non-interactive terse mode
* Fix saving of sub functions with default values
2021-07-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Stop parsing function after minimum number of arguments under the same conditions as after maximum number of arguments, when there are no more argument and parentheses are not used (e.g. log 64 / log 2 = log(64)/log(2))
* Stop parsing function that only takes one argument at argument separator, if parentheses are not used
2021-07-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Change "assumptions" abbreviation to "asm"
* Set both type and sign if assumptions are set to "none" or zero, and set type to number for "complex"
* Convert Celsius to Fahrenheit if no calculation was performed
2021-07-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix handling of OR and AND in multisolve()
2021-07-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault after failure to convert approximate unit (e.g. cal_fifteen)
2021-07-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for "a perm b" (= perm(a,b)), "a comb b" (= comb(a,b)), "a dot b" (= "a.b"), "a cross b" (= cross(a,b)), and Unicode cross product symbol
* Add Calculator::getGlobalFunction(), Calculator::getGlobalUnit(), and Calculator::getGlobalVariable(), for more efficient retrieval of objects
2021-07-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Avoid use of right-to-left Unicode symbols (do not present the currency symbols for IRR and AFN to the user)
* Do not try to load data objects from global definitions dir if data set is local
2021-07-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix norm() and magnitude()
* Add a second argument, p, to norm()
* Output abs(x) as |x|
2021-06-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for "^^" as XOR operator
* always check for "user" directory (regardless of compile time options), on Windows
* Output both original and factorized integer, in qalc
* Improved HTML output
2021-06-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for function creation in save() (e.g. func1():=\x*\y^2, or func1(\a,\b):=\a*\b^2)
* QALCULATE_USER_DIR environment variable
2021-06-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Always return exact result in base() function, in exact mode
2021-05-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Interpret "(10-134)±" as "(10-134)±0" instead of "(10-134)*0" (and similar)
* Add operators (".'", ".*", "./", ".^") and functions (replace multiply(), divide(), and pow()) for transpose, element-wise multiplication, division, and power
* Modify behaviour of addition with column vector, and addition of row vector to matrix
2021-05-23 Alex Henrie <alexhenrie24@gmail.com>
* Catalan translation
2021-05-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Vector dot product operator (".")
2021-05-19 leveltrauma <rhade_tm@t-online.de>
* German translation
2021-05-19 Noah <33094578+coolreader18@users.noreply.github.com>
* Add "BYO Gnuplot" functionality
2021-05-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Integration of x^a*b^(cx^d) (when a is not an integer)
2021-05-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Localize data property values
2021-05-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Exact calculation of igamma() in some cases
2021-05-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Make prefix names more flexible (as other objects), primarily for translations
2021-05-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix handling of translated definitions with more than one row (primarily translated function descriptions)
2021-04-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add dot() function for vector dot product and disable dot product using multiplication operator or implicit multiplication
2021-04-25 Damir Islamov <damir@secretlaboratory.ru>
* Russian translation
2021-04-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* secantsolve() function for solving equations using secant method
* normdistinv() function
2021-04-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Inverse of chi-square cumulative distribution
* Improve simplification of logical expressions (boolean algebra)
* Add boolean assumptions type for unknown variables
* Add nand and nor operators
* Add spelled out version of logical not operator ("not")
* Interpret bitwise operators as logical in some cases
2021-04-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* newtonsolve() function for solving equations using Newton's method
2021-04-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve betainc() function and return regularized version
* Add inverse incomplete beta function (betaincinv())
* Add inverse functions for F-distribution and Student's t-distribution
* Fix cumulative t-distribution for X < 0
* Fix include_equals parameter for max and min of function arguments
2021-04-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add plural forms to translated messages
* Set ENABLE_NLS outside of gettext macros
2021-04-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for number suffix k (e.g. 2k = 2000)
2021-03-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for d(f(x))/dx syntax (equivalent to diff(f(x),x))
2021-03-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add sexagesimal variants (sexa2, sexa3, longitude, longitude2, latitude, latitude2)
2021-03-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add function for distance between GPS coordinates (geodistance)
* Loosen rules for parsing " and ' as arcminutes and arcseconds
* Do not append degrees at end of sexagesimal output
2021-03-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for solving equalities and inequalities with error functions (erf(), erfc(), erfi(), erfinv())
* Add cauchydist() function
2021-03-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Replace tonne with small prefix, with (kilo)gram (e.g. 5 kg instead of 5 mt)
2021-03-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add erfinv() and probit() functions
2021-03-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add functions for exponential and Weibull inverse cumulative distributions (expinv() and wblinv())
* Add cumulative parameter to all statistical distribution functions
2021-03-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add incomplete beta function (betainc())
* betadist(), fdist(), and tdist() functions
2021-03-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add chisqdist(), weibulldist, and gammadist() functions
* Fix gammainc() function
2021-03-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add command() function (runs external command)
* Improve handling of expressions with log-based units
* Fix conversion to multiple units, of which one is a temperature unit, with relative temperature units activated (e.g. g/oC to g/oF)
* Improve conversion of expression with multiple units to a single unit (e.g. m/W to W)
* Fix compilation with readline version < 7
2021-02-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Save handle_vector property
2021-01-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow prefixes, with full name, without units (e.g. kilo = 10^3)
2021-01-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Temperature calculation modes (absolute, relative, hybrid)
2021-01-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix saving of local data objects (user data was deleted)
2021-01-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add daysInMonth() function
2021-01-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Always place units with prefixes before other units
* Improve prefixes when expression contains both units that do and units that do not use prefixes
* Fix kWh composite unit
2021-01-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Modify behaviour of percent addition when first term is percentage (e.g. 10%+50%=60% instead of 10%+50%=15%)
2020-12-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Change keybinding for store command to Ctrl+A
* Apply standard terminal action for keybindings (Ctrl+A, Ctrl+E, Ctrl+F) if current input is not empty
* Ask for name if store command is used without argument
2020-12-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix saving of local data objects
* Add Unicode symbols (not used by default) for Ångström, Kelvin, liter, and pound
2020-12-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix set conv mixed in qalc
* Use x, y, z as function arguments if '\' is not found in function expression of qalc function command
2020-12-12 Juan Carlos Alonso <me@jcalonso.com>
* Fix BYN exchange rate url
2020-12-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix saving to an existing variable (using save() or ":=") of a value containing the very same variable
2020-12-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Chain calculation parsing mode
* RPN syntax as parsing mode
2020-12-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix uninitialized PrintOptions::base_display and set default value to BASE_DISPLAY_NONE (fixes issues in floating point format output)
* Fix output of negative numbers with floating point format
2020-11-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Make all currency codes, except CUP and KGS, case insensitive
* Make cup unit (avoid conflict with Cuban pesos) and gcd() function (avoid conflict with gigacandela) case sensitive
2020-11-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix precision in output of expression after RPN operation in qalc
2020-11-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not output Unicode cube root symbol (often has low legibility)
* Show cbrt(a) instead of a^(1/3) in result (when PrintOptions::halfexp_to_sqrt is true)
2020-11-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix never ending loop with log-based unit in trigonometric function
* Use false/true instead of 0/1 for result of equality or inequality
2020-11-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in isolate x with exponentiation factor without x in base
2020-11-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add automatic and dual approximation and fraction options to Calculator::calculateAndPrint()
2020-11-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in Calculator::convertTimeOut(), and potentially Calculator::calculateRPN() (fixes conversion in the unit manager in qalculate-gtk)
2020-11-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not ask before overwriting temporary variables in qalc
* Add Ctrl-R shortcut for store command in qalc
2020-11-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add "precalculate expression" argument (default false) to save() (this also changes the behaviour of ":=")
* Fix local time zone on Windows
* Fix matrix/vector multiplication when the matrix/vector is stored in an approximate variable
* Fix parsing of expression with multiple degree signs
* Support multiple equivalent custom digits, separated by semicolon (e.g. "0;aA1;bB2;cC3"), in base() function
* Phoneword digit set in base() function
2020-11-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Automatic (default) and dual approximation in qalc
2020-10-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Always place unit with prefix first
2020-10-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use Unicode symbols for >=, <=, and != in function argument description and function condition (in qalc and defs2doc)
2020-10-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Automatic (default) and dual fractions options, in qalc, which shows simple, mixed, and/or decimal fractions depending on format and contents of expression and result
2020-10-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix quoted degree symbol in function argument (e.g. code("°"))
2020-10-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for different character encodings in code() function
* Fix Unicode number base (multiply with 2^32 for each position)
* Fix default separator in load() and export()
* Always perform conversion to optimal (SI) unit when the expression is a number multiplied by a unit and input equals output
2020-10-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add matrix rank (rk) and reduced row echelon form (rref) functions
* Add support for d/dx notation for derivatives, e.g. d/dx sin(x) = diff(sin(x))
2020-10-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Replace variables with corresponding units (e.g. c with c_unit) in unit expressions
2020-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix date/time output includes (wrong) decimals (zeroes) in some cases (e.g. with nextlunarphase())
* Improve handling of ignore comma/dot option outside of calculated expression in qalc
* Set arguments for comb() and perm() as positive integers
2020-10-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for Unicode quotation marks
* Improved Unicode fraction handling
2020-10-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix parsing of "°²" and similar
* Do not use degree symbol when degree unit is base in exponentiation
2020-10-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Activate formatting and coloring on Windows 10 (set ENABLE_VIRTUAL_TERMINAL_PROCESSING)
* Fix press enter to continue and to abort on Windows
2020-10-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Define rad as a base unit for now (fixes issues with lumen) and add special case for conversion of rad and related units to length ratios (e.g. m/m)
* Fix rates.json not installed
2020-09-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Compiled definitions without GIO
* Add MC, MS, M+, M- commands and MR/MRC variable in qalc
2020-09-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve plot (and genvector()) speed for user functions
* Fix show information for multiple matching objects in qalc
* Add yr and annus names for year unit, röntgen name for roentgen (R) unit, and rem for roentgen equivalent man
* Add Rutherford (Rd), millirem (mrem), mrem/s, and erg/g units
* Show radioactivity in rem_radioactivity as suffix (subscript)
2020-09-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow scientific e-notation without preceding digit, e.g. E2=1E2, with warning message
2020-09-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not save x, y, and z as user variables if global variables are not loaded
2020-09-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show information for all matching objects (if there are multiple objects with the same name) with info command
* Show information about prefixes with the info command and list prefixes with find command, "list prefixes", and --list-prefixes
* Use thin space on Windows 10
* Remove ending white-space from from expression when separating "to"-expression;
2020-09-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix cot(pi/2), coth(pi/2*i), arccot(0), arcsch(0), and arcoth(0), and simplify inverse sec, csc, and cot
* Show currencies in parsed expression using ISO 4217 code (e.g. USD instead dollar)
* Do not use "$", "dollar", and "dollars" for USD and remove cent, if symbol for local currency is "$"
* Do not use "£" as symbol for GBP if symbol for local currency is "£"
2020-09-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use thin space on Windows 10
* Use B as abbreviation for byte instead of bel
* Show information for all matching objects (if there are multiple objects with the same name) with info command
* Show information about prefixes with the info command
* List prefixes with find command, "list prefixes", and --list-prefixes
2020-09-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use "noenhanced" Gnuplot option (fixes plot titles with exponents with more than one character)
2020-09-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix conversion from km/L to mpg (and similar)
* Do not use variable units in conversion when units are missing from the original value
2020-09-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix logarithmic y scale in plot
2020-08-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Increase default precision in qalc to 10
2020-08-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Transform vector to matrix with one column (column vector) for matrix arguments
2020-08-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Treat vector as column vector for matrix multiplication (when 1st factor is a matrix and 2nd factor is a vector)
2020-08-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show information about wrong number of arguments for explicit commands (using /)
* Fix help text for info command
* Fix variable command when illegal name cannot be converted to valid name
2020-08-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for ohm unicode symbol and inverted ohm (for siemens)
* Add biot (Bi) name for abampere
* Add abhenry (abH) unit
* Fix display of unit with negative exponent and factor 1 (do not display as division)
* Display multiplication of non-abbreviated and abbreviated similarily
2020-08-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix conversion to ratio
* Replace J/T with A*m^2
2020-08-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add binary prefixes zebi and yobi
* Hide composite SI units for which a specific name/symbol exist
* Do not use prefixes by default with most CGS units
* New composite units: cP, cStoke, mTorr, dyn/cm²
* Digit grouping after decimal separator (in groups of three, with standard digit grouping)
* Use middle dot for multiplication and Unicode symbols for exponents 2 and 3 in composite units when Unicode is used
2020-08-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add kph/kmph (km/h)
2020-08-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix BYN exchange rate (was inverted)
* Fix BYR exchange rate
* Fix updating of BYN and BTC exchange rates
* Fix update date for exchange rates not from ECB
2020-08-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add arcsin, arccos, arsinh, arcosh, etc. as names for inverse trigonometric and hyperbolic functions
* Interpret sin^-1, cos^-1, etc. as inverse functions (arcsin, arccos, etc.)
* Fix parsing of negative power in function arguments without parenthesis
* Add deftorad() function
2020-07-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add Euler's totient function
2020-07-26 VicSanRoPe <?>
* Spanish translation
2020-07-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Load custom exchange rates from LOCAL_DATA_DIR/custom_exchange_rates, with one "x ABC = y DEF" (e.g. "1USD=70.86RUB") on each row
2020-07-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Extend man page with commands, settings, syntax, and examples sections
2020-07-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support use of right arrow (including "->") as alternative to "to" for conversion (e.g. 5m->ft)
2020-07-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Only apply PrintOptions::negative_exponents to units
* Always use negative exponents instead of division when all units have negative exponents
* Use middle dot instead of multiplication x in unit expressions
* Case insensitive sorting of units, variables and functions
* Add more references in qalc to the GUI manual
2020-06-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Normalize numbers with fractional exponents, e.g. sqrt(a)^-b=sqrt(a)^b/a, a^(-2/3)=a^(1/3)/a, a^(2/3)=a^(-1/3)*a, and simplify roots with rational multipliers after evaluation
* Improvements for mixed fractions
* Avoid excessive parentheses with negated powers
2020-06-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix plus-minus sign in misplaced character/operators error messages
2020-06-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix placement (last) of constant of definite integral
* sin(x*pi) and tan(x*pi) equals zero if x represents an integer
2020-06-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when parsing an expression that contains a prefix with more than one letter and a unit exponent (2 or 3) without exponentiation operator, e.g. dam3
2020-06-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix use of equals sign in qalc command line arguments (e.g. "qalc --base=16")
2020-05-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for +, -, (, ) superscripts
* Use × (U+00D7) as default multiplication sign
2020-05-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Syntax highlighting using colors in qalc
* Remove space around division in unit expression
* Enable Unicode by default
* Use Unicode superscript for units (when placed separately and negative exponents are disabled)
2020-05-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support N-Ary Summation symbol, in addition to sigma, for sum() function
2020-05-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow multiple "to"-conversions in one expression (e.g. "5 m/s to hex to ft to h = 0xE6AF.1E*ft∕h)
* Support specification of number of bits for hexadecimal "to" conversion (4 to hex16 = 0004)
2020-05-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Divide value with time units by hours if time format is used
* Fix sexagesimal, and time format, output when 3rd section is rounded to 60
* Show decimals, in 3rd section, with sexagesimal base and time format
* Improved handling of intervals for sexagesimal base and time format
2020-05-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* If argument 2 in replace() is vector and argument 3 is not, evaluate argument 3 and test if vector, e.g. replace(x+y+z,[x,y,z],multisolve([x+y=2,x+z=3,y+z=4],[x,y,z]))
2020-05-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show warning for ambiguous implicit expression (e.g. 6/2(1+2)) in adaptive parsing mode
* Fix use of comma as AND in "where" expression
2020-05-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Option to compile definitions into binary (--enable-compiled-definitions, requires GIO)
2020-04-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Tau (2pi) variable
2020-04-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Interpret text after hashtag (#) in expression as comments
2020-04-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Accept angle (value with angle unit or value > 1 and < 360) in nextlunarphase()
2020-04-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix removal of default angle unit from trigonometric functions in output when factor is one
2020-04-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix automatic conversion to Newton
* Fix display of fraction in exact decimal fraction mode when indicate repeating decimals is active (in GUI)
* Fix display of repeating decimals (do not add additional whitespace when Unicode is off)
* Fix x^2=25m^2 where x>0 (was evaluated as false), and similar in exact mode
2020-04-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault with empty sin() or sinh() in equation
2020-04-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when running qalc in non-interactive mode and gnuplot is missing (issue #184)
2020-04-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix nextlunarphase(), for values > 0.8 and < 0.2 (issue #183)
2020-03-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault during calculation of atan(acos(x)), atan(asin(x)), and asin(atan(x)) when angle unit is deg or gra
2020-03-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix order of prime factors
2020-03-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add persistent parameter, with default true value if qalc is started in non-interactive mode (avoids immediate closing of plot window), to plot() function
2020-02-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix max decimals option for intervals displayed with significant digits (was used as both max and min)
2020-02-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add "Number of decimals" and "Round halfway to even" (default away from zero) arguments to round() function
2020-02-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Restore A and B (case insensitive) digits in input of duodecimal number
* Use 0d as prefix for input of duodecimal numbers
* Always interpret expression as duodecimal if it contains duodecimal Unicode characters
2020-02-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* IEEE 754 floating point (binary) conversion - functions float(), floatBits(), floatError(), floatParts(), and floatValue(), and "to" conversion using binary16/fp16, binary32/fp32/float, binary64/fp64/double, fp80, and binary128/fp128
* Support specification of number of bits for binary "to" conversion (4 to bin16 = 0000 0000 0000 0100)
* Fix rounding with max decimals in some cases
2020-02-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in solve() with AND and OR in solution
2020-02-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Modify behavior of floor(), ceil(), trunc and round() - mark result as exact, allow approximate calculation of argument in exact mode, return interval when appropriate (e.g. floor(interval(1.5,2.5))=interval(1, 2))
* Increase input buffer length (maximum length of line) in qalc
2020-01-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Write interval using significant digits in CSV file
2020-01-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix 1kOhm||1kOhm (and similar)
2020-01-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not include pregenerated reference documentation in source package and move documentation generation from autogen.sh to Makefile
2020-01-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix sign of real part when multiplying complex number by infinity
2020-01-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when simplifying sin((infinity-i)+(-infinity+i)) and similar
2020-01-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Rename IdentityFunction class to avoid crash in Cantor because of conflict with Poppler library class with same name
2020-01-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix integral of asin(x)^-2
* Fix integral of a^(b+cx)/x (where a<0)
* Fix integrate(1/(a+b*i*x^(1/3)),c,0)
2020-01-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Retrieve exchange rate for BYN (Belarusian ruble) from nbrb.by
2020-01-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when solving sqrt(x)!=-1 and similar
2019-12-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* (-x)^a*x^b=-(-x)^(a+b) if b is odd
* tan((2n+1)*pi/2) might be either plus or minus infinity for each n (let function fail)
2019-12-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add base units (or local currency) to expression when "to"-expression specifies unit conversion and original expression does not include any units
2019-12-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix display of factorized 5/7234234234*x+5/9234234*y and similar (a(bx+y) where a and/or b are rational number displayed approximately)
* Fix cosh(x)^2+sinh(x)^2
2019-12-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* bernoulli() function (number or polynomial)
* Support second argument in zeta() for Hurwitz zeta
* Exact values in zeta() for negative integers and even integers
2019-12-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improved interval handling in besselj() and bessely(), and in gamma(), zeta(), and airy() when argument is negative
2019-12-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix never ending loop in isolate x with interval() containing interval
* Improvements for x^(ax)=b
* Simplify output of sin(x)=a and cos(x)=a, when a=0 or a=1
2019-12-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fixes and improvements for lambertw(x)=a
* Support complex arguments with non-zero imaginary and real parts in Si(), Ci(), Shi(), and Chi()
2019-12-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Split up big source files
2019-12-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support complex numbers in Ei() (and li())
* Extend supported arguments for Li()
* zeta() for all reals
2019-12-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support complex numbers in erf(), erfi(), and erfc()
* Integrals of fresnelc() and fresnels()
* Integrals of 1/sin(ax)^n and 1/cos(ax)^n where n>2
* Improved handling of angle arguments
2019-11-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Imaginary error function
* Fresnel integrals S and C
* Add id property to ExpressionItem to remove the need to add a variable for each new math function to Calculator class
2019-11-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for calculation of Lambert W for all branches and complex numbers
2019-11-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Integral of a^(b*x)*c^(-d*x^2)
* Improve handling of definite integrals with abs()
* Fix definite integral for ln(abs(ax^b+c)) where and ax^b+b=0 and a*x^b is not an integer for lower or upper limit of x (0*infinity in result)
2019-11-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Innumerous integration enhancements and fixes
* Fix begin temporary enable interval arithmetic without end (fixes some equations after exact mode has been disabled)
* Improve solution tests
* Use local instead of global buffer for i2s() and similar
* Include uncertainty() function when replacing function arguments and where replacements with variables
2019-11-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix infinity^x=a (x != log(a, infinity))
* Fix interval replacement with variable in exact mode
2019-11-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix incorrect solutions to equations not removed
2019-11-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Circular mil units (cmil and kcmil/MCM)
* American wire gauge (awg) functions (area and diameter)
2019-11-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove "using namespace std" from header files
2019-11-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix ending zeroes and min decimals for approximate rational numbers
* Improved output of significant figures for number intervals in some cases
2019-11-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Calculate uncertainty propagation, using variance formula, separately for imaginary and real numbers
* Numerous improvements/fixes for integrals
2019-11-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not automatically recalculate expressions with answer variables when calculation/parsing mode has changed (CLI)
2019-11-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* sinh(i*x)=i*sin(x), cosh(i*x)=cos(x), tanh(i*x)=i*tan(x)
2019-11-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when parsing "∠∠"
* Restrict the max number of displayed digits to 100000 when scientific notation is completely disabled
* Recognize the unicode fraction slash (interpreted as division sign)
* Only parse ' and " as foot and inch with number bases <= 16
* Check if complex tanh is continuous for definite integral
2019-11-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Automatic detection of unknown variable (if corresponding argument is set to undefined or zero) in functions
* romberg() and montecarlo() functions for numerical integration
* root(x, a)*abs(x)^((a-1)/a)=x
* Use ln(abs(x)) instead of ln(x^2)/2 (in integral)
* Move integrate() variable argument from 2nd to 4th position
2019-10-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Much improved numerical integration (using Romberg's method)
* integrate() argument which force numerical integration only
* Calculator::clearMessages()
2019-10-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Depth of field (dof) function
2019-10-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix numerical integration error calculation
2019-10-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* expondist(), binomdist(), randpoisson(), randrayleigh(), and randexp() functions
2019-10-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add argument specifying number of values in random number functions
* randnorm(), randuniform(), and normdist() functions
2019-10-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix integral of a^(b*x^c)
2019-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow angle argument in cis()
* Fix complex exponential form when default angle unit is not radians
* Complex cis form
* Complex angle/phasor notation (input and output)
2019-10-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Option to use "j" as default symbol for the imaginary unit in qalc
2019-10-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix definite integral of abs(cos(x)) and similar
* Improve integration of abs(f(x))
* Fix sgn(x) = 0
* abs(x^a) = abs(x)^a if a is real
* ln(x^2) = 2*ln(x) if x > 0;
2019-10-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Bijective base-26 support (including bijective() function)
* Fix never ending loop when formatting unknowns with more than one character, in qalc
2019-10-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Option to use binary prefixes by default for information units
* "b?"-syntax (unit expression prefix) for optimal binary prefix (e.g. "b?byte")
* Improvements for '?' (optimal prefix) in conversion expression
2019-10-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* poisson() function
* Define steradian as rad^2 (was wrongly defined as m/m instead of m^2/m^2) for improved solid angle conversion
* Add square degree as a solid angle (composite) unit
2019-10-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fixes for when narrow no-break space is local digit grouping separator
* Calculate inverse when division operation is applied to RPN stack with only one value
2019-09-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Only read first value (both values were concatenated as one) from /proc/uptime
2019-08-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add kgf/cm^2 composite unit and interpret kg/cm^2 as kgf/cm^2 when converting pressure
2019-08-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow replacement of >1 and <n terms or factors in replace(), e.g. replace(x+y+1, x+y, x*y)
* Allow function replacement in replace(), e.g. replace(sin(x), sin, cos)
2019-08-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* "where"-syntax (e.g. "x+y where x=1 and y=2", or alternatively "x+y/.x=1,y=2", and "x^2=4 where x>0")
2019-08-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Interpret comma as vector/argument separator if decimal separator is comma but numbers contains multiple commas or comma at end, e.g. [5,2,3,x]=[5;2;3;x], and add misplaced decimal separator warning for unhandled cases
2019-08-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix local thousands separator on Windows when localeconv()->thousands_sep is a non-Unicode character > 127 (e.g. non-breaking space, 0xA0)
2019-07-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Man page
2019-07-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add Calculator::setLocalCurrency() (overrides currency specified by LC_MONETARY)
2019-07-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support both micro sign and small mu as symbol for micro prefix
* Allow translation of prefixes
* Fix English spelling of "deca"
2019-07-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Treat text after '_' as suffix by default when user creates a new function, unit, or variable
* Check for duplicate names when loading imported definitions
2019-07-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add "to unicode" conversion
* Display messages generated during initial loading of definitions immediately (instead of after first calculation) in qalc
2019-07-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for text arguments when hiding default function values in output
* Fix italicization of symbol when function argument
2019-07-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* dec() function
* Fix show ending zereos for non-integer rational numbers with non-decimal radix
* Improved handling of interval arithmetics for cubic equations
2019-06-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* General support for bases > 36, negative bases, and non-integer bases
* Reduce length of expressions in messages (primarily when using high precision)
* Fix max decimals for small intervals with +/- display enabled
2019-06-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add support for bases > 36, negative bases, and non-integer bases, in base() function
* Remove replacements (not updated properly) for obsolete currencies
* Fix parsing of "0x80 mod 3" and similar
2019-06-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* dBm and dBW units
2019-05-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix abs(x)=a for complex x
2019-05-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* CODATA 2018 update for physical constants
2019-05-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improved operator support for RPN syntax
* Fix "percent" interpreted as "/ cent"
* xor() => lxor(), bitxor() => xor()
2019-05-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in findMatchingUnit()
* Fix crash with empty factorial
* Fix crashes with vectors containing empty vector ([[]]) and matrices with only one row and column
2019-05-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show binary, octal, decimal, and hexadecimal result when using qalc in programming mode
* Do not save bases and caret as xor when using qalc in programming mode
2019-05-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* For vector + scalar, add scalar to all components
* Round bitwise right shift downwards by default (arithmetic two's complement shift)
* Treat all non-zero values as boolean true (was positive true, non-positive false)
* bitrot() function for bit rotation
* Add signedness argument to bitcmp()
* Handle decimal shift operator steps with base < 10;
2019-05-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Combine consecutive Unicode powers in one power
2019-05-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for Unicode fractions
* Support base prefixes with input bases other than decimal
2019-05-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* -p BASE command line option for programming mode (same as -b "BASE BASE" -s "xor^") in qalc
* Support setting both input and output base with "base" command/option in qalc
* Do not require space between command line option and number in qalc (e.g. -b16)
* Fix seqfault with -set command line option in qalc, for some options changing expression parsing
2019-05-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* " mod " and " rem " operators
* Unicode support in char() and code()
2019-04-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* div() function (integer division)
* '%' as rem
* "//" and "\" (if followed by space, number, +, -, ! or ~) for integer division (truncated)
* RPN syntax support for bitwise operations
* Allow compatible functions, variable, and functions with input base > 10
2019-04-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support Ɔ (open O) in roman numbers
* Fixes for '|' in roman numbers
* Support compl, bitor, and bitand as alternatives to ~, | and &
2019-04-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Recognize "factor" and "expand" commands at the beginning of the expression
* Change order of operations for logical and bitwise operators to better match C operator precedence
* Always show spaces around spelled out logical operators
* Bitwise XOR operator
* Add alternative unicode symbols for bitwise and, or, exclusive or and not
* Caret as XOR option in qalc
2019-04-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix factorization with uncalculated power of number (do not factorize)
* Fix explicit mixed units conversion when automatic mixed units conversion is disabled
* Fix "set autoconversion 0" in qalc (deactivate mixed units conversion)
* Fix segfault on factorization of "167772160y^4 − 41607495680y^2 − 11748245499y − 2147483648"
2019-04-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Accept date and time separated by space instead of 'T'
* Remove old SI definitions
* uptime variable
* Increase precision of "now"
* Always truncate seconds in output date and time
* Improve output of factorized result with approximately displayed values
2019-04-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improved simplification (polynomial long division) and factorization
* Allow vector of values in replace()
* Fix represents number test (should be either non-zero base OR, not AND, positive exponent)
2019-04-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix crash when formatting 1 / ((0 × 0)(1 / 0)^2)
2019-04-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove wide interval messages if final result is within precision
* Fix options not output for "help set" in qalc
* Rename "simplify" to "expand", to avoid confusion
2019-04-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Simplify y*f(x)+z*f(x) to (y+z)*f(x)
2019-04-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for "portable" Windows version
2019-04-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve currency symbol placement
* Fix loading of interval arithmetic setting
* Do not display more than the significant digits with non-decimal bases for intervals
* Fix display of ending zeroes for approximate integers
* Do not show fractions for approximate values with show ending zeroes activated
* Fix display of roman numeral reciprocal
* Show no item found message when find/search command fails
* Improvements to polynomial division
* Never add minus sign to ± value (uncertainty)
2019-04-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix potential segfault in acosh calculation
* Add general number interval order check
* acosh(0)=0.5i*pi, acosh(1)=0, and acosh(x)=acosh(-x)+i*pi when x<=-1
* atanh(x)=atanh(1/x)-0.5i*pi when x > 1
* Fix segfault in Number::square(), and possibly Number::recip() with (relatively) extremely small imaginary part
2019-04-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add optional variable value argument to diff()
* Hide optional arguments with default value in output
* Fix integrate(sinc(x),x,0,infinity) and similar (should return pi/2 instead of Si(x))
2019-04-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve effeciency and precision, in approximate mode, of diff()
* Proper interval arithmetic for airy() with arguments >= -1
* Fix ignore locale on Windows
2019-04-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not use angle unit in Si() and Ci()
* Convert trigonometric arguments to selected angle unit
* Hide current angle unit from result in qalc
* Fix equations with inverse trigonometric functions when default angle unit is none
* Never show ending zeroes for roman numerals
* More flexible im() and re()
2019-03-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Calculation of Si(), Ci(), Shi(), and Chi()
* Integration of sinc()
* sinc(x)*x=sin(x)
* Use sinc() for derivative of Si()
2019-03-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix atomic unit of velocity
* Improve findMatchingUnit()
2019-03-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix limits.h inclusion (fixes compilation errors)
2019-03-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix "factorized result is wrong" because of non-simplified value in logical and calculation
2019-03-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix make check (add test.cc and defs2doc.cc to POTFILES.in and add data files to POTFILES.skip)
2019-03-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix rational power interval in some cases
* Improve gcd() with non-integer coefficients
* Fix segfault when rounding some intervals
2019-03-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix heuristic gcd
* Fix limit((6x^3) ∕ (7x − 2x^2 − 5),infinity) and similar
2019-03-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix square of complex interval
2019-03-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix show ending zeroes for rational numbers
* Avoid multiplication of very long polynomials (fixed)
2019-03-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ignore locale option (CLI)
* Handle empty set option value (in most cases by assuming "on") (CLI)
2019-03-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fixes for equations with uncertainty propagation
* Fix cubic equation in exact mode in some cases
* Fix a^x=b if it is now known if a and b is zero
* Layout fixes when formatting "= approx. 'a'"
2019-03-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Two's complement for hexadecimal
2019-02-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use old SI definitions until 2019-05-20
* Update translations
* Hide unit and constant suffixes in result
2019-02-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix exact decimals mode
* Fixes for conversion to base units with nonlinear unit relations
* Do not show nonlinear unit conversion warning unnecessarily
* Fix compilation on 64-bit Windows
* Uncertainty propagation improvements
* Fixes for conversion to base units or optimal units involving approximate relations in exact mode
* Improved simplification with nounit() factors
* Fix variable reparsing when variable units are (de)activated
2019-02-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Replace decimal with exact decimal rational numbers when exact mode is toggled on (CLI)
2019-02-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Separate interval calculation / uncertainty propagation method choice (from interval arithmetic for approximate functions and irrational numbers)
* Enable interval arithmetic by default (CLI)
* Relative uncertainty property for variables, units and data objects
* Fixes for complex uncertainty propagation
* Fix uncertainty propagation using variance formula with multiple non-variable intervals (was calculated using interval arithmetic, potentially after expansion)
* Uncertainty function (absolute or relative uncertainty)
* Line break in variable info value (CLI)
* Show expression in function info (CLI)
2019-02-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Enable show ending zeroes by default
2019-02-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Disable CLI text formatting on Windows
2019-01-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Unformat variable value (fixes units with prefixes)
* Improve plus-minus interval display
* Fix conversion to constant when unit conversion fails
* Fix optimal conversion to C
* Fix find matching unit in some cases (when unit order differs)
* Electronvolt units
2019-01-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* +/- syntax for non-numeric values
* g (and not g/mol) is base unit for u
2019-01-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Only show 2 significant decimals (and equal amount of decimals for main value) for uncertainty of number with +/- display
* Improve constants (including relations between physical constants)
2019-01-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* nounit() improvements
2019-01-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Calculate propagation of uncertainty using variance formula if interval arithmetic is deactivated
* Fix randomly activated interval arithmetic (uninitialized variable)
2019-01-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Many new physical constants (included particle masses in u and MeV/c^2)
* Use kg instead g for physical constant to get the correct value when units in constants are disabled
* Define Planck units as units instead of variables
* Some atomic units
* Unit variants of c and reduced Planck constant
* Support uncertainty in parentheses for units
* Handle incorrect use of '=' for assignment in for(), and add example
2019-01-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update elements data set (update values and add standard uncertainty to atomic weight)
* Update planets data set
* Support uncertainty in parentheses for variables and data objects (e.g. "4.002 602(2)")
* Add uncertainty and range (in brackets) support for data objects
2019-01-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support UTC+/-hh[:mm] and CET time zone conversion (using "to")
* Time zone display fixes
* Support some time zone abbreviations
2019-01-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Physcal unit relation constants
2019-01-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix limit((1+\a/x)^x,infinity), and similar
2018-12-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support vectors of conditions and expression in if()
* Assume false if not true argument in if()
2018-12-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* raid() function for RAID capacity calculation
2018-12-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow "to"-conversion for variable without units
2018-12-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use prefixes with litre by defult
2018-12-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Reciprocal unit conversion (e.g. 5 m/s = 0.2 s/m, 60 mpg = 0.039 L/km)
2018-12-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix missing prefix for gram when exponent of gram is not one and automatic prefixes is off
2018-11-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fixes for units with non-linear relation
* Use single quotation marks for unknowns with one character
2018-11-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve line breaks
* UTF-8 algorithms tweaks
2018-11-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix handling of unicode chars for \a (="a") syntax
* Only use italics for quoted single characters
2018-11-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve appearance of x*m/s and similar
* Hectare/decare improvements
2018-11-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Proper line breaks in qalc
* Fix (x+y)^a (was not expanded!)
2018-11-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Line count fixes
2018-11-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not transform rational numbers to integers in numerator and denominator if the resulting integers is not displayed in exact format
* Add set options shortcuts and add option descriptions to help set, in qalc
* Set restrict_fraction_length to true for 'set fractions fraction' in qalc
* Hectare and decare units (in addition to ha/da and hectoare/decaare)
2018-11-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix roman() when used for reversed conversion with number that includes zero (issue #93)
2018-10-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix compilation without readline
2018-10-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Always interpret expression that begins with '/' as a command in qalc
* Interpret a character preceded by '\' as an unknown variable (same as in quotation marks)
* Replace text in quotation marks with italic text in qalc
* Always enable units for expressions that ends with "to [unit expression]", "to optimal", or similar
2018-10-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Group options in qalc
* Fix values for x when log(x) and Li(x) represents positive
* Fix a*b^x+cx=d
* Fixes for interval calculations with complex derivative
* Improve trigonometric interval calculations
2018-10-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Simplify e^(a*pi*i) to (-1)^a and apply further simplifications to (-1)^a instead
* raised the to power" => "raised to the power"
* Fix atanh(x)=a when im(a) < 0 (no solution exists)
* Fix temporarily activated interval arithmetics leading to lasting deactivation
* Fix magnitude() definition
2018-10-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Solve a^(2x)+a^x=b, a^(-x)+a^x=b, and similar
* Solve a*sinh(x)+b*cosh(x)=c
* Fix atan(i) and atan(-i)
* Simplify e^(i*atan(a)) to (1+a*i)/sqrt(a^2+1)
* Generalize e^(a*pi*i) for all rational a
* Simplify (a/b)^c to a^c/b^c if a and b are integers
* Fix unrecognized gcd failure
* Fix segfault on n*1^infinity
* Fix atan(i) and atan(-i)
* Fix atanh(x)=a when im(a) < 0 (no solution exists)
* Fix temporarily activated interval arithmetics leading to lasting deactivation
2018-10-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fixes for default angle unit other than radians
* Solve a^(b*x)+x=c in exact mode
* ln(a*i+b) interval fix
* Fix for trigonometric functions with division by argument
* Improve polynomial exponentiation limit calculation
2018-10-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Simplify arg(e^(a*i)), ln(e^(a*i)) and (e^(a*i))^b
* Calculate approximate value to determine sign in abs(), arg(), sgn(), heaviside and dirac(), in exact mode
* Use ln()=ln(abs(x))+arg(x)i in more cases in exact mode
* Fix infinite loop in trigonometric simplifications
* Only remove near zero part of complex number interval if interval includes zero
2018-10-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove probably zero imaginary part from numbers in plot data
* ln() simplifications for complex arguments
* Fix approximate comparison between rational number and interval
* Fix never ending loop in polynomial division
* Fix (-x)^(-2/3) and similar when x is assumed negative
* abs(a^(b*i))=1 if a is positive and b is real
* Fix endless loop with abs(interval) base and polynomial power
2018-10-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix endless loop with (x^8)^(52^(1/10)) and similar if x is assumed negative
* Fix simplification of a*log(b)+c*log(d) when b or d is complex
* Fix "E-" in +/- number interval specification
* Fix segfault in interval variable factorization
2018-10-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Simplify (e^(a*i))^(b) when a and b are real numbers, and b equals 1/2 or abs(a) < pi
* Test result for ln(x)=a if a is complex
* Solutions for x*ln(a*x)=b and x^2*ln(a*x)=b, and a*x+ln(b*x)=c
* Fix precision property for a^(+/-infinity)
2018-10-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Newton-raphson fixes/improvements
* Use Lambert W branches for complex solutions
* Add solution for a*b^x+cx=d when d != 0
* Calculate all complex solutions for x^(a/b)=c
* Make n variable available to user
2018-10-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Univariate factorization (non-square free) for polynomial factors with degree >= 2 (simple algorithm based on Kronecker method)
* Add branch argument to lambertw() (only the principal branch is calculated)
* Fix segfault in gcd with very large polynomial degree (restrict to < 1000)
2018-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve a*x*b^(c*x)=d
* Solve a*b^x+cx=0
* Improve x^(a*x^b)=c
* Simplification and factorization fixes
* sqrt(a)/a=1/sqrt(a) for rational numbers
* Fix a^x=b for complex x, and (-1)^x=1 and (-1)^x=1 for real x
2018-10-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow interval and infinity when determining if equal for logical and, and or
* Improve a^x=b
* Return exact result for x^x=a in some cases
2018-10-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix a^x=b when a is zero
* Fix abs(x)=-a
* Fix segfault on 1^(a/b) in exact mode when a or b are extremely large
* 1^a always exactly 1 if not a is infinite
* Set maximum argument for cosh and sinh calculation (< 2^28)
* Set maximum order for bessely() to 1000 (too slow above)
* Fix log(a^x, b) when a is negative or x is complex
* Fix parsing of thin space in numbers
2018-10-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix adaptive interval display (when +/- in expression)
* Fix E-notation for +/- (parse 1E4+/-1E2 as 10000+/-100)
* Improve precision of asin(a*i); Fix ln(a*ln(pi))
* Fix segfault in polynomial division
* Fix polynomial division in some complex cases
2018-10-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* sin(i*x)=i*sinh(x), etc.
* a^(b*c)!=(a^b)^c if b is complex
* Replace with temporary variable in replace() if replacement value is interval
* Replace n with single possible value in equation result for unknown variable with interval
2018-10-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix radian unit with prefix in trigonometric functions
* Fix critically slow handling of many AND OR combinations
* Fix segfault in aborted sort
* Fix rounding in some cases with intervals
* Fix display of zero with strict exp mode
* Fix factorization segfault
* Trigonometric simplification fix
2018-10-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix illegal vales for acos(x)=a
* Fix atanh(-infinity*i)
* Set exact value for atanh() with infinite argument
* Fix root(-ax, n) when n is even
* Fix sinh(x)=a
* Use parentheses for complex numbers (not used if formatted)
* Do not use prefixes for angle units by default
* Set PrintOptions for messages
* Fix 'n' and 'C' variable assumptions
* Fix various segfaults
* Always place number/zero on right side of comparison in formatted result
2018-10-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use quadratic equation formula directly for ax^d+bx^(2d)=c (solve for x^d)
* Fix/improve trigonometric transformations
2018-10-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault in during formatting
* Fix 1/x=0 when x may be infinite
* Improve comparison tests
* Fix factorization segfault
* Fix MathStructure::unformat()
2018-10-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve precision of ax+bx^2=0
* Improve formatting of values in error/warning output
* Use kilo as prefix for gram if automatic prefix is off
* Set max exponent for use of mpfr_pow_z
* Fix logical AND segfaults
* asin() fixes for complex interval
2018-10-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix acosh(x)=a
* Add random expression testing
* Fix segfault on 0^(-e) and similar
* Fix asin() and acos() for complex numbers
* Restrict maximum argument value for sin(), cos() and tan() using current precision
* Trigonometric simplification improvements
2018-10-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* sqrt(a)/a=1/sqrt(a) for integers
2018-10-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* a*sin(x)+b*cos(x)=a*sqrt((b/a)^2+1)*sin(x+atan(b/a)); sin(sqrt(3)/2)=pi/3, tan(sqrt(3)/3)=pi/6, etc.
2018-09-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* sin(acos(x))=sqrt(1-x^2) and similar
2018-09-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Solve equations with trigonometric functions
* sin(a*i)=i*sinh(a), cos(a*i)=cosh(a), tan(a*i)=i*tanh(a)
2018-09-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* If x might be complex solution for a^x = b is x = (i*pi*n + ln(a)) / ln(b) and similar
* Add "C" (for integrals) and "n" (integer) unknown variables (not user accessible)
* Trigonometric functions improvements/fixes
2018-09-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* f(a.b*pi+x) equals (-) f(0.b*pi+x) for sin(), cos() and tan(), e.g. sin(3.37pi+x)=-sin(0.37pi+x)
2018-09-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove negative sign from trigonometric function argument (e.g. sin(-x)=-sin(x))
2018-09-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Parse |x| and ||x|| as abs(x) and magnitude(x)
* Fix Avogadro constant uncertainty
2018-09-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add magnitude(), entrywise() and hadamard() functions
2018-08-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Option to disable automatic conversion to local currency (when optimal conversion activated)
2018-08-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix f(x)+a=a (e.g. x+1=1)
* Fix automatic unit conversion after RPN stack calculations
2018-08-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Polar and exponential complex number forms
2018-08-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix ignore comma for RPN syntax
2018-07-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix ln(-i)
2018-07-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix display of negative number interval with +/- interval display when uncertainty is lower than global precision
* Fix display of addition with negative non-integer number (show "x - a" instead of "x + -a")
2018-06-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not automatically update all exchange rates sources if not needed
2018-06-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use mycurrency.net html instead of the json data, which has not been for a month
2018-06-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Only use two's complement representation for integers
* Use a * base^b for extremely long numbers in bases other than decimal
2018-06-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* When using two's complement representation on negative non-integers, use the same number of decimals as without two's complement representation
* Fix round() for negative rational numbers!
2018-06-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Interpret 5m 7cm (and similar, for m and L) as 5m+7cm, and 3h 5min (and similar) as 3h+5min
* Interpret m2 and m3 as m^2 and m^3 (as before), but m4 as m*4
2018-05-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Treat definitions in non-standard user files as global (not directly editable), in order to avoid duplication
* Add Calculator::calculateAndPrint() function
2018-05-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add "to base #" conversion
* Lunar phase functions
2018-05-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Calendar conversion
* Add "to" conversion for display of numbers in roman, sexagesimal, or time format
2018-05-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Search for matching functions, variables and units using 'list' (or 'find') command in qalc
* Improved ln() simplifications
2018-05-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not automatically convert to broken down composite unit c for x*a+x*b (and similar), if a and b are both aliases for c
* Allow 1°2'3" format for degree, arminute and arcsecond
* Add arcsec and armin reference name to Arcminute and Arcsecond
* Use prime symbols for sexagesimal output format
2018-05-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix crash when expression contains '>', '<' or '=', and libqalculate is compiled with -D_GLIBCXX_ASSERTIONS
* Allow 5'8" format for feet and inches
2018-05-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Treat rates.json with "Internal Server Error" message as failed exchange rates download
2018-05-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ignore empty lines and lines beginning with # or // in batch file
2018-05-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix never ending loop in (-x)^(2/3) if x is assumed negative
* Fix x/(x^(3/4)+x) and similar when x is assumed positive
2018-05-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improved series titles in plot()
* Derivative for bessely()
* Improved product log deriative
2018-05-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add titles to currency list in qalc
2018-05-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add countries property to currencies
* Add "(obsolote)" to relevant currencies titles
2018-04-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Enhanced interval arithmetic with dependent intervals
2018-04-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New currency names and titles (contributed by majumeke)
2018-04-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Two's complement representation
* bitcmp() function
* Option to interprete binary number using two's complement representation in bin()
* Allow all rational numbers for second argument of root()
2018-04-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix a^infinity when a > 1
* limit() function
2018-04-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault when prefix is set in some cases
2018-04-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* "to"-conversion for physical constants
2018-04-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Calculate each vector element (and each extra argument) separately in many functions (e.g. sin(5, 2, 3) = [-0.95892427, 0.90929743, 0.14112001])
2018-04-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Only remove quotation marks at beginning and end of command line expression if they are the only ones
2018-04-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Direct date and time calculation
* Return date and time in stamptodate()
* Time zone conversion
2018-04-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use local currency as "optimal" currency unit
2018-04-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow user to change decimal separator (and consequently argument separator)
* Fix lambertw()
2018-03-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix display of parsed sexagesimal number
* Do not remove spaces within quotation marks
2018-02-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Change how percent (and permille, permyriad) addition and subtract is calculated (100+20%=120)
2018-03-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow ParseOptions::comma_as_separator to have effect on unlocalizeExpression() and localizeExpression() even if Calculator::useDecimalPoint(true) has not been called.
2018-03-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix complex atan()
* Derivative of arg()
* ln(x^a)=ln(x)*a if 1>a>-1 and a!=0
2018-03-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segmentation fault when calculating arg(-x)
2018-03-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Derivative of gamma(), besselj(), heaviside(), Ci(), Si(), Shi(), Chi(), Ei(), Li(), li(), erf(), erfc(), sinc(), factorial and comparisons, and use dirac() for derative of sgn().
* Complete the square when factorizing
2018-03-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* --version (-v) command line option for qalc
* Make data and config directories recursively
2018-03-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Always display rational exponents as fractions if numerator and denominator is less than ten
* Fix endless loop when factorizing expression with sgn()
* Number display fixes
2018-03-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix endless loop with (5^x)^(1/3)*5^x
* Precalculate in replace() function if original value not found
2018-03-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segmentation fault root() in some cases
2018-03-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* ln(x^a)=a*ln(x) only when x is positive
2018-03-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Increase efficieny of trigonometric functions in some cases
* Fix 1^x
* Allow final interval expansion for high precision intervals
2018-03-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix endless loop when solving (x^(1/3))^3 * (x^(1/3))^2 + (x^(1/3))^2!=0 and similar with variable substitution
2018-02-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improved handling of blocked messages
* sin(x)^2+cos(x)^2=1
2018-03-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Partial fractional decomposition
* << operator for MathStructure and Number
2018-02-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Enhanced integration
* Numerical approximation of definitive integral (using Simpson's rule)
* Fix exact (-a)^(-b/c)
* Fix derivative of acosh
2018-02-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* dsolve() function for differential equations
* Simplify result inbetween each run for high order derivatives to increase performance
2018-02-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show a more informative message and fail in autogen.sh when doxygen and API docs is missing
2018-02-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Icelandic Krónur added to ECB data
2018-01-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use mpfr_rootn_ui with mpfr version >= 4.0.0
2018-01-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support negative exponents and k > n in binomial function
2018-01-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Set Gnuplot samples to avoid unsmooth smoothed curve
2018-01-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Check if plot data is continuous
2018-01-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use auto_y_min/auto_y_max/y_min/y_max plot parameters
* Increase default number of plot samples
2018-01-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add vacuum_permeability and vacuum_permittivity as names for magnetic and electric constants
* Add completion only names to enable completion of greek letters from the roman letter names
2018-01-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix segfault on extremum(cot(x),x)
2018-01-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix variables (including electric constant) with units parameter and pi in expression
2018-01-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix unicode signs in expressions with quotations
2017-12-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* sinc() function
2017-12-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Suppress gnuplot error output in terminal
2017-12-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix x = 0 m && x != 0
2017-12-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix exact calculation of sqrt(-1/8)
2017-11-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Infinity fixes/enhancements. Unsigned infinity removed.
2017-11-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix (a+b*i)^0
2017-11-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Enhanced display of repeating decimals
* Fix numbers less than 1 when max decimals is 0
* Enhanced display of parsed expression
* Digit grouping
2017-11-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Option to disable units in physical constants
2017-11-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix engineering mode (exp mode < -1) for rational numbers < 1 with few decimals
* Fix complex number multiplication (a+b*i)*(c+d*i)
2017-11-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Interval arithmetic
2017-10-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Bitcoins
* Use 'X' and 'E' (or approprioate unicode characters) instead of 'A' and 'B' in duodecimal numbers
* Set approximate flag in zeta
2017-09-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Enhanced simplification of expressions with polynomial division
* Data with invalid values are plotted as discontinuous function
2017-09-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix thread not terminated on Calculator deletion (issue #45)
2017-09-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix 5/(x−y)−3/(2x−2y)=7(2x-2y)
* Factorization fixes
* sqrt(-a)=sqrt(a)*i
2017-09-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix convert cbrt(L) to optimal unit
* Fix automatic prefixes for negative numbers
2017-09-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix ^4 and ^5 unicode signs
* Fix for sqrt(a)=b*sqrt(c)
* Calculate all complex roots for x^a=b
* arg() enhancements
2017-09-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Comparison functions for date class
2017-09-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Version check function
2017-09-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Additional exchange rates source (mycurrency.net with over 100 additional currencies)
* Enhanced equation solving
2017-09-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* abs() and sgn() enhancements
2017-09-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* cbrt() and root() now always returns real root
2017-08-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix solving of (a+x)/(b+x)=c
2017-08-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Duplicate the RPN register at the top, instead of pushing zeroes, on RPN enter with empty expression (fixes qalculate-gtk issue #22)
* Implementation of all R algorithms in percentile function
* Use a formula for exponentiation with a complex power that preserves precision better
2017-08-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix inconsistent parsing - x^22x=x^22*x, x^2x=x^(2*x) (now x^2x=x^2*x)
* Do not round exact integers in EXP_NONE/"Simple" mode (its only annoying)
2017-08-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove duplicate history entries in qalc
* Fix factorization issues
2017-08-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Precision variable
2017-08-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix sum(x/x,0,10) and avoid warning for sum(x/x,1,10), and similar
* Unicode ellipsis
* Return zero for plot()
2017-08-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Enable plotting on Windows (gnuplot must be installed separately)
* Support middle dot (00B7) as multiplication sign
2017-08-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ability to apply functions with multiple arguments to the rpn stack (including using the whole stack for functions with a vector as argument)
* Fix clang compilation
2017-08-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix compilation on Ubuntu 16.04
* Move function in fincance to parent category and update description of pmt()
2017-08-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Derivatives of inverse and hyberbolic functions
* Make for() more efficient
2017-08-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Enhance gamma(). Add digamma(), arg(), conj(), besselj(), bessely(), airy(), erf(), erfc()
2017-08-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix decimal exact fractional format for large numerators and denominators
* Avoid display of numbers with extremely large number of digits (> 10000000) for all options
2017-08-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix trigonometric functions with angle unit other than radian
2017-08-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Include system-wide exchange rates file to avoid issues with missing currencies and the need to ask first-time users questions
* Reactivate deactivated global variables, units and functions after conflicting local object has been removed
2017-08-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Set argument min/max from requested integer type
2017-08-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fixes for MS Windows (now compiles, and runs without apparent issues, with MinGW)
2017-08-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Rewritten date functions with support for larger numbers
* Check if variable exists in save (:=) function
* Fix case insensitive comparison where upper and lower case string have different length
2017-08-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use libcurl instead of gvfs/wget
* Remove glib dependency (require instead iconv and icu)
2017-08-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Handle errors on thread read and write (seems to solve issue #38)
2017-08-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix max decimals
2017-07-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use default evaluation options with approximate calculation in plot function
* Use GMP and MPFR instead of CLN
2017-07-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix 3(x+1)(x+y)^3 to factors = 81((x + y) / 3)^3 * (x + 1)
2017-07-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix engineering exp mode in qalc and allow divisors other than 3
* Do not round digits before decimal point for exact values with exp mode off
* Fix sin(pi+x) and cos(pi+x)
2017-07-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix multiplication of matrix by (row) vector
2017-07-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Interpret 1e.1 as 1^10*0.1 instead of 1*e*0.1, and enable use of 'e' as unknown
2017-07-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Example property for functions
2017-07-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More efficient factorials
* Fix Number::print() not able to terminate with very large numbers (halted at cln::expt_pos with y = 0)
* Fix termination of MathStructure::print() and format() with very large size
* Add extra termination points for MathStructure with large size and do not sort numbers when aborted
* Fix display of large integers in fractional modes
* Make product() and sum() more efficient
* Fix for()
* Check that step size gives finite number of data points and set max data points to 1000000
* Increase speed of Number::print() with huge numbers
2017-07-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add option to use step size instead of sampling rate for plot function
* Fix non-decimal numbers with rpn syntax
2017-07-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Prefer non-hidden composite units over alternatives with multiple units, in optimal unit conversion (5 m/s^2 instead of 0.005 N/g)
2017-07-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New Calculator::calculate() variant that calculates a parsed expression
* Command line option for maximum calculation and display time
2017-07-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix formatting of (x^2)/(10y) (was (1*x^2)/(10y))
* STRUCT_ABORTED MathStructure type
2017-07-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Rename Calculator::printMathStructureTimeOut() to Calculator::print()
2017-07-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not convert temperature units if other units are converted, when converting to optimal or base units
* More efficient conversion to base units that solves issues with temperature units in conversion to base and optimal units
* Lower the maximum exponent to avoid slow division
2017-07-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Prefer positive exponents over negative, unless the result includes a another unit with positive exponent (fixes Hz)
2017-07-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not convert to composite units in mixed units conversion
* Fix mixed units forced by default in separate unit conversion
2017-07-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update elements data set
* Do not try to calculate zeta for values larger than 100 000
* Controlled termination of plot()
2017-06-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix x^-y (=x^(-y))
2017-06-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not try to calculate extreme exponentiations
2017-06-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Controlled calculation termination handling points
2017-06-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Polynomial gcd fixes
* Do not crash when factorizing 1
* Use clock_gettime() instead of gettimeofday() if avaiable
2017-06-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove "none" and "non-matrix" assumptions from qalc and when loading definitions from previous versions (<= 0.9.12)
* Fix transpose() and (matrix+1)*(matrix-1)
* For cases when 0x cannot be assumed to zero, the same should be true for 0x^b
2017-06-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Enhanced factorization/simplifaction (including hybrid mode)
2017-06-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Revised temperature unit handling
2017-06-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Updated automatic conversion - controls that new units really is better than old (fixes V^3) and splits up POST_CONVERSION_BEST in POST_CONVERSION_OPTIMAL_IS and POST_CONVERSION_OPTIMAL (prioritises original units)
2017-05-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use gio when available instead of deprecated gvfs-copy
* Save default preferences when running qalc the first time even if in non-interactive mode
* Fix ask if fetch exchange rates first qalc run
2017-05-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* unit/unit/unit = (unit/unit)/unit with adaptive parsing
* Fix "1 W Ohm /K/K"
2017-03-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Build fixes (Check for libtoolize instead of libtool in autogen.sh; Include Doxyfile in dist files)
2017-03-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Merge Windows support fork (chengsun)
2017-02-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use top of the stack twice (instead of zero) for operations (except subtract) when only one value is available
2017-02-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* "Pop", "copy", "rotate", "move" commands for RPN stack manipulation in qalc
* Enable both (or one of) RPN stack and syntax with the "rpn" command in qalc
2017-02-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix functions with RPN syntax
* Swap command for RPN stack manipulation in qalc
2017-02-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not always reparse expression when parse options have changed
* Introduce message categories and stages
* Hide parsing stage messages when only recalculating or angle unit has changed in qalc
2017-02-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix transform last arguments to vector, when only one last argument (fixes function("1+\x"; 1))
2017-02-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New commands for creation of simple functions and variables (with specified expression) in qalc
* Do not allow empty names
2017-02-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix and increase the size of the list of prime numbers
* Handle recursive variables (give error and return undefined)
* Replace ans with ans2 in ans (and ans2 in ans2...) in qalc
2017-02-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix set rpn syntax in qalc
* Fix set command, in qalc, for variables with spaces
2017-01-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not raise by exponent numerator larger than 10 000 or smaller than -10 000, when exact exponantiation has failed (fixes slow calculation of for example 2^0.333333333 in "try exact" mode).
2016-12-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not save mode changes in batches file
* Add 'comma as separator' option to qalc and only show 'dot as separator' when dot is not used as decimal separator
2016-12-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use https://www.ecb.europa.eu insead of http://www.ecb.int
2016-11-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add symbol for Czeck koruna
2016-10-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix u and 1/u to optimal, and handle unforeseen situations better in optimal units conversion
2016-09-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Plot functions
2016-09-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix saving of precision of unit relation
2016-09-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix "to base"
* Mixed units conversion (e.g. 75.2 min = 1 h + 15 min + 12 s)
2016-08-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix unit conversion (e.g. 1/s to ms)
* Fix unit conversion (e.g. 1/ns to GHz)
2016-08-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix degree sign
2016-08-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix compilation without readline
2016-07-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not use unicode signs in definitions list and show both abbreviated and long name
2016-07-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* 'delete' command, for removal of user-defined variables, in qalc
2016-07-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Option to list all functions, variables or units in qalc
2016-07-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* 'list' command, which displays a list of user defined variables, functions and units, in qalc
2016-07-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Avoid warning message if exchange rates file does not exist
2016-07-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix errors and warnings when compiling with clang, and fix unordered_map/hash_map issues
2016-07-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix crash when using locale missing on system
2016-06-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix parsing of "today" and add "tomorrow" and "yesterday"
2016-06-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show actual number of days since last exchange rates update
2016-06-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix localization of command line arguments
2016-06-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Improve exchange rates handling
* Add interactive command line option to qalc. Exit after commands from file have been executed unless interactive mode has been explicitly selected.
2016-06-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not check if exchange rates is up to date when using currencies with fixed exchange rate (currencies replaced by euro)
* Warn about old exchange rates again after one week if the application has not been restarted (Calculator object not recreated)
* Make sure precision and if approximate is not lost from units, functions and variables
* Update physical constants from CODATA Recommended Values 2014
* Fix unit precision from definitions
2016-06-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* sqrt(7/4) = sqrt(7)/2, sqrt(2)/2−(1/sqrt(2)) equals exactly zero
2016-05-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow special "to" commands directly in expression
* New "to" commands: factors and fraction
* Fix segmentation fault when aborting non-interactive qalc (do not use readline)
2016-05-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* to bin, oct, hex, bases commands in qalc
2016-05-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use ? or 0 in front of unit expression to control if missing prefix should be set
2016-05-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use MULTIPLICATION_SIGN_X by default
* Use prefix for more units, add centigrades name for celsius, add Dalton unit and move units to new Atomic Mass category
2016-05-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add unicode signs for powers 0 and 4-9, and cube root
2016-05-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Redesigned parsing of spaces in multiplication and division and new parse options to ignore whitespace or not treat implicit multiplication differently from explicit
2016-05-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix stack editing
2016-05-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New print safer abort/timeout system
2016-05-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add thread cancellation point in factorize number function to make crash less likely
* Attempt to make print thread cancellation less crash prone
2016-05-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not add default angle unit if one is already present
* Disable inclomplete uncertainty propagation support for now
2016-05-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not keep zero radians
* Always simplify before integration
2016-05-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix bug #108 by not checking for x in function arguments when isolating x, thus stopping infinite loop
* Fix sqrt(x)*sqrt(x)
2016-05-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix endless loops in gcd functions (solves bug #64)
2016-05-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use standard location for data and configuration (~/.local and ~/.conf)
2016-05-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* An attempt to solve the convert to unit issues:
- Transform Kelvin, Celsius, Farenheit to builtin units.
- Convert to kelvin when parsing, to make the conversion visible to the user, after implicit multiplication.
- Fix s/g to kg = s*kg/g^2.
- Do not set new prefix when converting to unit expression without prefix.
* Add Hartree and Rydberg units
2016-04-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update build files and increment version number
2016-04-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update currencies (fix currencies recently recplaced by euro, add new currencies
and add additional unicode signs)
* Allow decimals in sexagesimal numbers (request #26)
2016-04-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Catch CLN exceptions (fixes various bugs)
* Fix bug #79 and #127
* Option to ignore commas
* Apply most of the portability patch in bug #124
2016-04-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix preservation of case sensitivity in translated names
* Do not append zeroes to decimals if number is approximate or is shown approximately
2016-04-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Clarify how "Payment for a loan" works
* Fix "function" function when argument vector is too small
* Fix result for unsuccessful integration with limits
* Fix self-referencing in save function
2016-04-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix fibonacci function. Remove from program code and use the golden ratio.
2016-04-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix conversion to unit with prefix (bug #150)
* Fix conversion from unit with prefix (bug #97 and #104)
2016-04-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Introduce use_with_prefix property for units, to not use prefixes by defaults for units outside SI and CGS systems (solves bug #66)
* Partially revert commit [83fe08]
* Warn about bad integrate function
* Fix abbreviation for Rydberg constant (bug #140)
2016-04-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Include <algorithm> for std::sort()
* Use unordered_map instead of hash_map for new gcc versions
* Fix warnings (including bug #143)
* Provide a proper fix for bug 3020050 / #121 (without removing valid warning messages)
* Fix parsing of (0xff) (bug #102)
* Warn when raising zero by imaginary power (bug #141)
* Fix incorrect factorization (bug #130)
2009-01-05 Jonathan Stickel <jjstickel@vcn.com>
* General build updates and bug fixes, including the ability to build against cln >= 1.2.
* Bug fix for segfaults with some uses of integrate() (bug 2537772).
2008-03-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix reduction of vector size. Fixes bug 1913388.
2007-08-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Begin work on propagation of uncertainties
* Allow parentheses for vectors (a bit stricter parsing)
* brackets_as_parentheses parse option
2007-08-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* 2/5m = 2/(5m); 2/5 m = (2/5)*m
2007-08-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Make DataSet::calculate virtual
* dataset.object.property and object.property (with parse_options.default_dataset set) syntax
2007-08-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix crash with unsupported operator in RPN syntax (bug 1778267)
2007-08-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New Simplified Chinese translation (Roy Qu <royqh1979@gmail.com>)
2007-06-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Miscellaneous fixes before release
2007-04-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New functions: addTime(), isNumber(), isReal(), isRational(), isInteger(), representsNumber(), representsReal(), representsRational(), representsInteger()
* Show argument name instead of \x in argument condition
2007-04-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use Lambert W to solve equations
* Fix infinite loop when solving some equations
* New functions: addDays(), addMonths(), addYear()
2007-04-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Enhance lambertw()
* Add the Omega constant
2007-04-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Implement the Lambert W function
2007-04-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Avoid floating point underflow by, in approximate mode, checking against the value of pi in sin() and cos()
* Add more exact values for sin() and cos()
2007-04-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix simplification of (1-1/x)^3 and similar
2007-03-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add grams of TNT (gTNT/gramTNT) and tons of TNT (tTNT/tonTNT) units
2007-03-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix parsing of unit expressions (when converting) such as W/(m K)
* Expand data on elements
2007-03-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix clumsy mistakes in setPrefixes() leading to crashes
* Add typographic units
* Add some old french length units
* Add alternative name "variations" for permutations
* Fix atomic mass unit being put in second density category
2006-12-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New French translation (Nicolas Laug <Nicolas.Laug@polymtl.ca>)
2006-11-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update Swedish translation
2006-11-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update Dutch translation (Jaap Woldringh <jjh.woldringh@planet.nl>)
2006-11-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use "name := value" as shortcut for save(value; name)
* Return value in save()
2006-09-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Group integer factors in powers
2006-09-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Integer factorization
* Heaviside Step Function, Rectangular Function, Triangular Function, and Ramp Function
* Kronecker Delta, Sigmoid, and Logit Transformation
2006-08-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Generate API docs from autogen.sh
* Radius instead of diameter as argument for circumference()
2006-07-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Interpret 0x[0-9,a-f] as hexadecimal number (do not require first digit to be 0-9)
2006-07-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add optional upper and lower limit arguments to integrate() for definite integrals
* Add cross() function
* Handle powers with multiplication as base when setting prefixes
* Split powers with units when placing units separately
* Increment version number
2006-06-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix parsing of "x!)!"
* Use Julian year for light-year value
2006-06-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use "Display units separately" also for quantities with multiple terms
2006-06-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add base 3 exponent mode
* Add "Engineering" display mode
2006-06-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Unevaluated arguments were used when checking for numerical arguments in logn(), which caused log2(16/2) to first be evaluated to ln(16/2)/ln(2).
2006-06-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Polishing before 0.9.4 release
2006-05-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix libqalculate.so unresolved symbols with patch from Thomas de Grenier de Latour, add GLIB_LIBS to LIBADD
2006-05-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add additional localization options for use in KDE GUI
2006-05-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update API documentation
* Clean up Unit API
* More function descriptions
* tetrahedron(), tetrahedron_sa(), tetrahedron_height(), sqpyramid(), sqpyramid_sa() and sqpyramid_height() functions
* Do not update the stack until the calculation is finished
* stack() and register() functions
* Add true RPN mode to qalc
* Add "rpn", "stack" and "clear stack" commands, and "lowercase e", "lowercase numbers", "spell out logical", "dot as separator" and "rpn" set command options in qalc
* Update Swedish translation
2006-04-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update API documentation
* equation => formula in MathFunction
* Do less in setFormula() if formula is empty
2006-04-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix parsed expression for RPN operation
* Remove capitalization from argument titles
2006-04-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix bug #1475373 ("1 kg m/s" was simplified to "1000 m/s")
2006-04-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* README.translate with information for translators
* Update Swedish translation
2006-04-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Prepend !category! to strings, which might have different translations in different contexts, in data files
2006-04-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add the completed Dutch translation
* New name format in data files
* Update Dutch translation to new name format
2006-04-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix horrible, horrible bug that caused all number arguments to require numbers to be rational
2006-04-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ignore definition names beginning with colon, for plural names where the original name does not differ
* Set vectors and matrices as the first argument by default
* Add more function descriptions
2006-04-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Options to use dot as thousands separator when it is not the default decimal sign
* require_translation property for definitions, used in the large numbers category
2006-04-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update RPN functions
* Update API documentation
* Change usecs argument to msecs
2006-04-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Plugins
* True RPN mode
2006-04-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Set min and max in argument definition for zeta()
* Set exact value for zeta with argument 2, 4, 6, 8 or 10 and set infinity for 1
2006-04-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Symmetric matrix => Square matrix
* Some text string changes
* Accept vectors in elements function
2006-04-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Interpret 0x..., 0o... and 0b... as hexadecimal, octal and binary numbers, respectively, when base is decimal
2006-03-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove deleted data set from the data set list, not only the function list (fix crash on delete and update list view)
2006-03-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix contains... functions (and thereby integration)
2006-03-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ignore commas in numbers
* Start API documentation
2006-03-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Approximate comparison fixes
* Add PrintOptions->restrict_to_parent_precision (default true)
* Do not produce a result with multiplications inside multiplications (fixes prefixes with simplification)
2006-02-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Approximate comparison
* Avoid floating point overflow and underflow by not lowering precision in comparison and always using long floats
* Use floating point raise more often in approximate mode
2006-02-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix show ending zeroes when max decimals is set to off by a max value below zero
2006-02-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not use "Read Precision" in plot
2005-01-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* isodate(), localdate(), timestamp(), stamptodate() functions
2005-01-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* cos(x*pi*rad) equals 1 if x is even, not -1
2005-12-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Warn about denominators assumed non-zero option
2005-12-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Various fixes and enhancements
* Update Swedish translation
2005-12-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix ln(e^x)
* Isolate x in log(x) for inequalities
* Factorize x^2-y^2 and x^3-y^3
2005-12-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Isolate x fixes
* Fix merging of common factor with multiplication
2005-12-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Assume that simple unit relations do not negate
* Fix ?+(+infinity)
2005-12-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix non-commutative multiplication (multiplication with possible matrices)
2005-12-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix isolate x with "x^2 > -5" and similar
* Do not calculate y in "x && y" and "x || y" if x is false or true, respectively
2005-12-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New assumption type "non-matrix" for unknowns with commutative multiplication
* Finish isolate x / solve changes
2005-12-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Isolate x and solve fixes
* Fix matrix multiplication
2005-12-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Isolate x updates
* Put AND within OR (to get nicer inequalities)
2005-12-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Isolate x using AND and OR instead of vector
* Enhanced inequalities handling in isolate x
* Simplify AND and OR with comparisons (ex x < 5 && x < 3 = x < 3)
* Display "x < 3 && x > 1" as "1 < x < 3"
2005-12-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Incorporate ginac sqrfree updates between version 1.2.3 and 1.3.3
* Assorted fixes
2005-11-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Only treat e as E if preceded by number
* Do not test float number for infinite series
* Check factorized numerators and denominators for negative powers
2005-11-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Parse -x/y as (-x)/y instead of -(x/y)
* Print multiplication in negation with parentheses when excessive parentheses is on
* Do not display (x)(y)^z with multiplication sign
* Sort x^2*y^3 + 10xy - 3x + 8 instead of x^2*y^3 - 3x + 10xy + 8
2005-11-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Updated function arguments parsing ignoring space after function name and not stopping parsing of single argument without parentheses until space or right parenthesis without corresponding left parenthesis
* Be more strict with 0/x if x is not non-zero
* Fix 1E-1 = 1e-1
* Calculate as float when 1.0001 > base < 0.9999 and exponent is greater than 10000 or less than -10000
2005-11-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Unknown variable with sign non-negative or non-positive represents real number
* Update assumption type after setting sign and vice versa
* Assume again when dividing that units do not convert to zero
* "Einstein per Meter per Second" => "Einstein per Meter Squared per Second"
2005-11-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Be more restrictive with unknown variables/symbols with unknown type (might be unit or vector)
2005-11-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update qalc with new factorization and some more
* Option for qalc to read commands from a file first
* Fix unit comparisons
* Fix handling of units with function in relation saved in approximate variable
2005-11-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Sort out some power transformations
2005-11-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More fixes (I'm not very good at keeping track of them)
2005-11-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Preserve factorization print option (for (3/4*(x+1))/(y+1))
2005-11-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Lots of evaluation and factorization fixes
* Pass parent to some functions so the reference can be replaced for the whole child
* New MathStructure sorting algorithm using the fact that the structure usually already is well sorted,
reducing the time to factorize (x+y)^50 to a third
2005-11-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add rational polynomial parameter to arguments
* Add rational number parameter to number arguments
* Add polynomial functions -- coeff(), lcoeff(), pcontent(), degree(), etc.
* Fix lcoefficient (confused by l in ldegree mening low and l in coefficient leading)
* A more efficient differentiate function for sqrfree
2005-11-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fixes
* Determinant from GiNaC
* Only use the new inverse function for numeric matrices
2005-11-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* "borrow" sqrfree factorization and related functions from GiNaC
* Make evaluation more efficient (avoid recalculations)
2005-11-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* MathStructure gcd() and lcm()
* New simplification using factorization and factorization combing denominators
* Increment library soname number (QALCULATE_CURRENT)
2005-11-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Much more efficient determinant calculation
* Fix x*y^-1*y^-1+x*y^-1
* Fix cases when (x-1)^-1*(x-1)^-1 not returned (x-1)^-2
* Much more efficient inverse matrix calculation
2005-11-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use quotient rule in differentation to possible get simpler results then if always using the product rule
* Fix fetching of exchange rates with gnome-vfs < 2.10
* Fix display of fractions in fractional mode "Decimal (Try Exact)"
* Differentiation fixes
* Do unicode stuff correctly (a sequence of unicode characters was sometimes counted as one)
2005-11-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix (x+1)/x (= 1 + 1/x)
* Simplification by combining divisions
* Reversed polynomial division (ex. (x+1)/(x^2+2x+1) = 1/(x+1))
2005-11-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Compile without warnings with -pedantic and -Wextra
2005-11-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix simplification of (ax^b+cx^d)/x
* Fix (xy/z)+1/z
* Fix suggested multiplication sign before and after power
2005-11-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More parse polishing
* Fix for cln-1.1.10 and remove all "obfuscating" cln operators
* Builtin function's represents...() was not used because of missing const in declaration
2005-10-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Cleaner parsing (same result but looks nicer)
2005-10-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add metre/metres for meter/meters
* nounit() function
2005-10-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix Kibit interpretation (was kibitonne, is now kibibit) and similar
* Update setting of parsed structure and to expression in calculate function
* Update qalc
2005-10-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Option to reduce transformation when parsing and print formating
* Support for binary and other prefixes
* Information units (bit, byte, etc.) and binary prefixes
* Neper and Bel units
2005-10-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update Swedish translation
* light_year => lightyear
* Fix unended function information when optional arguments
2005-10-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add SIGN_SMALLCIRCLE and SIGN_MULTIBULLET to utf8_pos_is_valid_in_name to fix completion
2005-10-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Lots of new units
2005-10-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Only give "Error in unit expression" message on errors in CompositeUnit parsing
* Do not accumulate the error count between levels for temporary stop messages
2005-10-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add arguments past max arguments to unended_function
2005-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Put seperation of unit expression to string in calculate function in a separate function
* Add stopped warnings count
2005-10-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Print option to hide underscores (if not for suffix) in names
* Adjust precision of constants
2005-10-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add unended_function to parse_options and put unended function there when parsing
2005-10-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* mmHg unit
* Ideal Gas Constant
2005-10-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fortnight unit
* More composite units for convenience
* Foot-Candle unit
* Fix conversion footcandle <-> lux
* Einstein unit
2005-10-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More composite units for convenience (km, mm, ml, km/h, etc.)
2005-10-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Move currency definitions to currencies.xml
* Functions for loading sepearate global definitions files
* Create angle units if not loaded from definitions files
2005-10-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not create qalculate symlink to qalc (confusing when installing GUI in other location)
* Use gnomevfs-copy instead of wget if available
* Allow user to specify wget arguments
* Update currencies
2005-09-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* mph and mpg units
2005-08-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix (1/2)^n < 0.5
* Fix replacement of unicode signs when skipping quotes
* Fix 0 oC to oF (0*unit != 0)
2005-06-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove requirement glib-2.0 >= 2.4 and require libxml2 >= 2.3.8
* Do not let << take precedence over >> read from left to right
2005-06-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not use unicode prefix names for long names
* xor() and bitxor() is NOT algebra
* Add even() and odd() functions
* shift() function and operators ("<<" and ">>")
* Add functins for getting exchange rates url and file name to allow interface to do the downloading themselves
2005-06-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Support for "e" instead of "E" in result
2005-06-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* SIGN_POWER_1, ... => "^(1)", ... instead of "^1", ...
2005-06-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update Swedish translation
2005-06-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Reminder => Remainder
* Reminder (mod) => Modulus
* Bitwise NOT (~)
* xor() and bitXor()
* Clean up expression such (x && y) > 0
* Update currencies (more added)
* Warn the use that objects with '~' in name will be lost
* Keep loading/saving after error
* Do not crash when saving data sets (initialize cat_i_prev)
* Do not load nameless objects
2005-06-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Bitwise AND (&), OR (|), XOR
* Remove old giac stuff
2005-06-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Non-static getElement() function
* Initialize saved_locale before use
2005-05-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Max values seem to have been lost a long time ago -- add them again
2005-05-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Initialize ids_i
* Fix documentation typos
* Fix includes.h for gcc-4.0
2005-03-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* 5e2 = 5E2 = 500 and 5e = 5*e
2005-02-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update solve2()
2005-02-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Dialog with buttons works in gtk+-2.6.2
* Do not look at function arguments in contains... functions
2005-02-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update integration and differentiation (sin(x) != sin(x)*rad) after change in sin() and cos() behaviour
2005-01-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix RPN crash and don't add lonely stack value to itself
* Workaround freeze with message dialog without buttons
2005-01-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use the last operator for leftover stack values
2004-11-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show base (if not decimal, hexadecimal or non-standard) as subscript
2004-11-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix "Convert result" button
* Use singular instead of abbreviated name for completion
2004-11-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix draw unit
* Add alternative multiplication dot signs
* Enhance preferences safety
2004-11-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Check if unicode characters can be displayed
2004-11-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Revert back somewhat to the old behaviour of not rounding exact numbers not in exponential format
2004-10-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Generate vector function
2004-10-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Rearrange plot dialog
* Do not update plot data when not changed
* Make x variable separate for each plot function
2004-10-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix angle arguments by adding option default angle unit none where angle units must be specified
* Represents... for some functions
* Some tweaks
2004-10-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix 0.5!
2004-10-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix comparison of unit with unknown
* Try with assumptions set to unknown in solve function if not successful
2004-10-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix when size_t not is unsigned int
2004-10-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Disable plural forms not at the end of text strings (metersqrt(5) = meter * sqrt(5) instead of meters * qrt(5))
* Replace new lines with in definition xml files until we have a better solution
2004-10-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Speed-up csum when component(i, "v") is used
* Give messages in the right order (reversed)
* Update obsolete plot documentation
* Clean up parsing
* Add limit implicit multiplication mode
* Fix unit conversion
* Fix m*s -> 1 m*s
2004-10-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More speed-ups
2004-10-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Limit qalc history to 100 entries
* Increase qalculate-gtk history to 25 entries
* Store children i math structures as pointers to reduce copying of large vectors
2004-10-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Help buttons in variable edit, unit edit, function edit and plot dialogs
* Make definitions loading more than twice as fast
* -set command line option for qalc
2004-10-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* defs2doc program for generation of definition list in help
* Make help book and add appendix for lists of functions, variables and units
* Fix broken CVS
2004-10-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* promille -> permille
* Permille sign
* permyriad
* Fix atan() ignoring angle unit
* Add exact value for atan(1) = 1/4 pi and atan(-1) = -1/4 pi
2004-10-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Install headers
* Added pkgconfig file libqalculate.pc
* Remove inclusion of config.h in installed headers
* Include library headers with <libqalculate/*.h>
* Rename src/calclib src/libqalculate
2004-10-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update exchange rates command in qalc
* Update Swedish translation
* Add last set options to qalc
* Allow user to type - when unicode signs is disabled
* Division sign selection
* Use selected multiplication and division sign in text printing
2004-10-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix qalc Ctrl+D crash (exit when read line is NULL)
* Do not require two tabs to show completion list
* Do not show all output directly if terminal is too small
* Split out localization of definitions into po-defs
* Add full support for non-utf8 local characters in qalc
* Various qalc tweaks
2004-10-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix equalsIgnoreCase() for unicode chars and make more efficient
* Make qalc case insensitive and add extend localization
* Change package name to qalculate
2004-10-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use readline for qalc
* Change class Function to MathFunction
* Only use plural name when short multiplication
* qalc completion
* Autoconf updates -- make compilation of qalc and qalculate-gtk optional as well as readline
* qalc save variable, set assumptions, and more
2004-10-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ask if exchange rates shall be downloaded the first qalculate run
* Number base 1 makes no sense
* More work on qalc
2004-10-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Change n for micro to u
* Command line program "qalc"
* Get rid of traces of separate angle unit variable
2004-10-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add filter to save result to image file dialog
* Install libqalculate as a shared library
2004-09-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Alternative to use step size instead of sampling rate for generation of plot data
* Big approximate and precision check and fix
* Message about the limited functionality of the gamma function
2004-09-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Gamma for rational numbers with denominator 2
* Double and multi factorials
* Tweak parsing of !-factorials
* Modify CLN error message
* hyperfactorial() and superfactorial()
* Make factorials more efficient by using CLN numbers directly
2004-09-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow arguments to only be used in sub functions
* Remove countArgOccurence() as it is not needed any more
* Drop support for gtk+ < 2.4
* Fix large integers displayed inexact was reported as exact
* Stop gamma() if argument is not an integer
* Read precision from zero with decimals (0.000...)
* Set precision from function and its arguments after function calculation
2004-09-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* "Inverse" -> "Matrix Inverse"
* Fix isolate_x() when comparison type is not equals
* Make plot non-numerical error more informative and include non-reals
* No use to have if() arguments as text, as they now only are parsed initially
* Fix trimmean() and winsormean()
* Localize "timed out"
* Version 0.6.4
2004-09-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix selection of variable to solve
* New solve2() function
* New multisolve() function
* Do not add modified data object once more
* Do not check against new data objects for duplicates
* Get a default name for new vector/matrix just as with other known variables
* Display error when plot data contains non-numerical values
* Show function condition in function description
* Update Swedish translation
* We need to sort fully recursively before merging factors in factorize()
* Fix factorization with duplicate factor with a in (ax+b) greater than one
* Add new expression to expression history after set unknowns
* Use g_find_program_in_path() to check if gnuplot and wget is available to avoid terminal output
2004-09-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* unitedit_glade was used in variable dialogs
* Use factorization in isolate_x()
* Improve isolate_x()
* Check if terms is equal (or a = -b) with the current precision in subtract and add to be able to find very small numbers that really are zero
* isolate_x() fixes
* Preserve evaluation options through factorization
2004-09-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Include both "liter" and "litre" to avoid confusion
* Add "tonne" for metric ton
* Prefer keeping the original unit if equally good when converting to best unit
* Merge infinite numbers with somewhat known structures
* Be a bit more strict with undefined values
* Ohm and farad are SI units
2004-09-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Increase space after imaginary i by 1
* Fix never ending loop in getBestPrefix()
* Fix (2x)/(5(yz)) --> (2x)/(5yz)
* Take into account place_units_separately in improve_division_multipliers()
* Increase space at end of parenthesis by 1
* Change components() to dimension()
* Set correl() as a different name for pearson() instead of a separate function
* Check that the dimension of vectors is equal in pearson() and spearman()
* Test if polynomial division reduces the size of the expression
* Stop after editing data set from edit function function
* Tweak data set info printing removing tabs
* Save Image -> Save Image...
2004-09-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix data object edit option menu
* Do not show error when global data file cannot be loaded for local data set
* Update data property list also when the data set is new
* Fix setting data set function name
* Set default argument names for data set when entries are empty
* Do not delete original property and add new -- set original with new to not invalidate references in objects
* Position progress dialog center parent, and set unknowns and convert to unit expression under mouse
* Once again, fix prefix selection when prefix is first before/after zero
2004-09-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Rational factorization of higher degree polynomials
2004-09-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Some result display tweaks
* Update function titles and argument names
* Update Swedish translation
* Update documentation
* Print quotation marks for symbolic structures when not allow unusable
* Display e*e^x with multiplication sign
2004-09-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Full factorization of quadratic polynomials
* Transform sqrt(8) to 2*sqrt(2) (and similar) in exact mode
* Fix xy-xy=xy !!!
* Fix repeated apply in unknowns dialog
2004-09-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Updated result sorting
* (-x-y)/z --> -(x+y)/z
2004-09-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Set unknowns dialog
* More refined selection of popup menu items to show
* Polynomial division
* More reliable internal sorting
2004-09-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Extensive enhancements of symbolic division
* Alternative to assume that unknown denominators are non-zero
2004-09-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ex. 1/(x+10)=5, test if x+10 is zero after solve
2004-09-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Evaluation options was not always preserved when converting to best units
* Display x^(5/2) as x^2*sqrt(x)
2004-09-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Internal sorting fixes
* Update documentation
* Update Swedish translation
* Use displayed name when sorting
2004-09-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Make factorization more functional
2004-09-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Integration fixes
* Use representsNonZero() for arguments that must be non-zero
2004-09-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* "times", "plus", "minus", "per", "AND", "OR"
2004-09-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Finish GUI and user modifications for data sets
2004-09-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* rm -f qalculate; $(LN_S) qalculate-gtk qalculate
2004-08-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Edit and save data objects
* Finish system property of units
* Clean up some left over plural and singular stuff
* Add unit system to edit GUI
2004-08-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Planets data set
* Day and Julian Year
* Fix set icon
* Do not always make Calculator message window transient for main window
* Save and load accel map
2004-08-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* data collection -> data set
* Complete data set GUI
2004-08-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Complete most of the data collection stuff
* Move elements to data collection format
2004-08-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix diff() with variables and functions that contains x
* Simple integration
2004-08-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* ans2, ans3, ans4 and ans5
* google/googleplex -> googol/googolplex
* thousand and hundred
* Reduce min result area height
* Put angle mode in evalution options
* Status text
* Save to image
* Initial work on data collection concept
2004-08-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix RPN mode
* include errno.h
2004-08-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove giac arguments
* Update documentation
2004-08-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix prefix selection when first positive/negative exponent prefix
* No prefix in result prefix menu
* Only left parenthesis where added around vector!
* Make the title for mils more descriptive
* FIx matrix multiplication
2004-08-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Make no comparison to solve error message more informative
* Do not factorize if factor is not non-zero
* Fix prefix selection with negative exponent prefixes
* Fix prefix selection with denominator prefix enabled
2004-08-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix concatenate()
* Add localized full name to ans variable
* Make sure that completion pops down when going back in history
* Set minimum arguments to 1 for mergevectors()
2004-08-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix derangements() which was broken due to changed interpretation of -1^x
* CALCULATOR->u_rad was null
* True and False variables
* "yes" -> "Yes" and "no" -> "No"
* Localize "True" and "False" radio buttons
* Add *.xml.in files to the dist tar sources
* Complete exp1 in "2+5exp1"
* Add undefined variable
* Fix ids in text arguments when function is used in other function (fixes distribution functions)
* Show classification in atom() dialog
2004-08-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove double decimal points
* Nicer unit printing
* Warn in name edit dialog if name is used
* Update documentation
* Use gtk-paste instead of gtk-go-forward icon for insert
* Properties dialog for atoms in periodic table
* Respect max decimals with show ending zeroes
* Fix precision typos which made objects with undefined precision approximate
* Make element properties selectable
* Paste function instead of value of element property
* Display classification in element dialog
* Unformat parsed function expression
* Make sure that no unwanted prefixes are left when function expression has been parsed
* BMI (Body Mass index) function added (just to prove that Qalculate! is more than a scientific calculator)
2004-08-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Reduce number of element properties for now and verify
* Periodic table
* Update Swedish translation
2004-08-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not be backwards compatible for definitions saved with the current version
* Update Swedish translation
* Where there is approximate there shall also be precision
* More physical constants
* Fix formatting of x/unit
* Add atomic mass unit, u
* Add <system>si</system> again
* Elements!
* Ignore initial zeroes for precision
2004-08-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Finish names GUI
* Finish new number precision system
* Menu item for read precision
* Option to show ending decimals (to see actual precision)
* Fix parsing of numbers with base < 10 and decimal point
2004-08-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Initial work on GUI for new name system
* Treat whole ending number as suffix (for log10)
2004-08-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More work on name system
* Remove quarter unit
* Regenerate definition files
* Remove duplicate names
2004-08-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not prefix currencies in all locales
2004-08-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New system for variable, unit and function names
* Solve quadratic equations
2004-07-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* System property for units ("si" value only used for now)
* Optional automatic conversion to best or base units
* Update version number in global definition files
* Add CGS units
2004-07-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Mark SI units
* Convert to best unit now only converts to SI units
* Mass Fraction (kg/kg)
* Fix insert and edit composite unit
2004-07-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Electron Volt is approximate
2004-07-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix arg()
* ...and disable it as it does not work correctly
* Fix i being display multiple times
2004-07-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Focus tweaks
2004-07-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* -5^2 = (-5)^2 -> = -(5^2)
* Beautify 2 * -1
* Fix not
2004-07-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show if precalculation display is approximate
* Show if approximate conversion in units manager
* Enable unicode signs in from-unit label
* Deillion -> Decillion
* Refine when to update result and display of result
* Ability to disable complex results
* Ability to disable infinite results
2004-07-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update variable lists in GUI after save function has been called
* Do not let the user type any braces in the expression entry
* Select added plot series and let enter in plot expression entry modify selected (if any selected)
* Fix rad unit being dropped in unsolved sin/cos function
* Fix plus/minus before id
* Show precalculation result in history view
2004-07-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Oops! operators does not include parenthesis
* Use unicode operators in text printing
* base == 10 -> base >= 2 && base <= 10 (in parsing)
* Refine CSV export dialog
* Sort out some getActive... vs get...
* Fix too many arguments warning
* Increase function parsing efficiency (decrease number of MathStructure copies)
* Produce vector imediately on parse
* Export button in variables dialog
* Split number base expression and export csv dialogs from main.glade
* Remove <requires lib="gnome"/> lines
* Update Swedish translation
* Update documentation
* Fix nameTaken()
* Fix overwriting variable
* Remove deleted items from recent units/variables/functions
* Do not try to insert deleted variable
2004-07-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More work on base in parse options
* Fix E in rpn mode
* Parsing tweaking
* GUI for number base in expression
2004-07-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Alternative to round halfway integers to even (instead of upwards)
* Make qalculate symlink from qalculate-gtk
* Fix addColumns() and import of CSV file to matrix
* Export to CSV file
* if, function, error, warning, load, save and title functions were not activated (oops!)
* Let argument definitions parse default values
* Do not parse ! as factorial if functions is disabled
* Ability to set number base for expression parsing
* Allow full expressions in base functions
2004-07-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Ability to set all number bases from 2 to 36 from GUI
* Documentation updates
* Alternative to use lower case letters in numbers
* Fix double decimal point with integers
* Fix decimal reduction rounding
* Fix precision rounding
* Fix approximate indication with multiple numbers
* Fix printing of empty vector
2004-07-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update documentation
* Force use of -O2 instead of -Os
* Revert back to a^b^c = a^(b^z) (I don't remember changing it)
* Unknowns disabled by default
* Copy subfunctions
* GUI for subfunctions
2004-07-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not segfault on exit
* Fix compilation warnings
2004-07-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not try to fetch exchange rates everytime they are missing
* Set fetch timeout to 5 seconds on first run
* Inform user that we are trying to fetch exchange rates
* Update fetch exchange rates at startup in preferences dialog
2004-07-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Follow ISO 8601 standard for week numbers (glib doesn't)
* Sort out approximation with rounding
2004-07-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix input of numbers in bases > 10
* Is approximate? fixes
* usleep() is obsolete. use nanosleep() instead
* Terminate threads before exit
* Include unistd.h in main.cc for pipes
2004-06-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* definitions -> subfunctions
* save subfunctions
* Function::countSubfunctions()
* Fix for()
* Fix creation of vectors with zero or one component
* Pass parse options to function parsing
* Variables might contain functions
* Fix approximate integer printing
* Fix try exact
2004-06-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Release v. 0.6
* Do not create a new thread for every calculation and printing
2004-06-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* ...
2004-06-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Continue converting to new internal structures
2004-06-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Continue converting to new internal structures
2004-05-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Converting to new internal structures
2004-05-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New internal structures (Manager -> MathStructure)
2004-04-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Find linear function
* Do not automatically recalculate on precision spinbutton update and add recalculate button to avoid annoying problems
* More multiple root updates
* Do not just clear the window, clear the pixbuf too
* MatrixArgument->type should not return TEXT_ARGUMENT
* Multiple roots updates
2004-04-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Put in some restrictions and enable multiple roots
* Disable multiple roots
* Remove 0 == any number from Manager->equals
* try x^(y+z) = x^y*x^z and x^(yz) = x^y^z
2004-04-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Capitulate in search for exact as long as possible to fix alternatives
* Recalculate directly on angle unit change
* Enable multiple roots again
* Do not ignore unsolvable comparison
* Remove imaginary or real part present because of approximate floating point numbers
* Do not display errors for arguments in exact precalculation
* Do not display extra trailing zeros
* Make comparison between floats in lower precision (but not less than user defined precision)
* Fix printing of toplevel negative complex number
* Return -(x^(1/3)) for (-x)^(1/3)
2004-04-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove integrate parts that does not work
* Do not crash on i^4
* Disable broken multiple roots
2004-04-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Hyperbolic and inverse does not take angle arguments
* Fix raise by matrix
* Fix raise by alternatives
* Fix drawing of function
2004-03-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More solve work
* Fix sorting of alternatives
* Fix wrong add alternatives to alternatives logic
* Clean after multiplication raise... (serious bug)
* Quadratic equations
* Non-giac solve function and automatic "solving" of comparisons
* Better comparison equals printing
* Minimal non-giac integrate function
2004-03-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Finance -> Economics/Finance
* Demand Elasticity function
* Fix that all arguments wanted text after function editing
* Free temporary composite units
* Fix sin(x)/tan(x)
* No (+ -) in printing with complex numbers
* Fix sorting of complex numbers
2004-03-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Release v. 0.5
* More extensive, verbose and fault-tolerant roman input
2004-03-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Set exact button for edit variable
* Fix diff() with power without x
* Fix compilation with gtk+ < 2.3
* Do not crash on abort sum() (memory leak is better)
* Change line width instead of drawing multiple lines
* Use barckets instead of parenthesis when drawing matrix
* Use commas for vector drawing
* Fix matrix text printing
2004-03-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not let user disable loading of global definitions
* Do not raise if makes approximate in exact mode
* Cleanup unused functions
* Fix hypotenuse and make non-builtin
* Automatically act on "calculate variables"
* Set e as default second argument in log()
2004-03-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* time()
* week(), weekday(), year(), month(), day()
* Allow "today" for dates
* Use both localized and non-localized "to"
* Sexagesimal number display
* Fix prefixes with simple display format
* Sexagesimal number input
* (2 > 0) + (2 > 0) = 2 * (2 > 0)
* Polynomial division refinements
2004-03-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Roman numerals
* Polynomial division
2004-03-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix printing of complex numbers with negative imaginary part and no real part
* re() and im()
* Fix unit conversion
* Imperial and U.S. capacity units
* Fix nested product() and sum()
* Correct treatment of (), "", '', and {} in text argument
2004-03-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Symbols for sum, product and ohm
* derangements()
* sum() and product() corresponding to the signs
* sum() -> total()
* Reorganisation of function categories
2004-03-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Complete convert to best unit
2004-03-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Make result context menu context sensitive
* Protect intValue and longIntValue against overflow
* Fix printing of exponent 1E...
* Convert to best unit (beginning)
* Convert to base units
2004-03-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Define sin and cos as expressions
* e^(i*pi) = -1 ...
* ln -1 = i*pi, ln i = i*pi/2, ln -i = -i*pi/2
* permanent()
* Print short currency unit before value
* Factorize independent of giac
* Make my own derive function default
2004-03-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* asec, acsc, acot, sech, csch, coth, asech, acsch, acoth
* cis
* As we now have complex number, define inverse trigonometric functions as expressions
* sec, csc, cot
* "CAS" -> "Calculus"
* Update my own derive function and enable it if giac is not used
* Fix ln() argument so that e can pass through
2004-03-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show error when custom condition is not met
* area, ascii and char functions
* Limits function should accept negative numbers for end. Fixes trimmed, weighted and winsorized mean.
* Nicer text printing of matrices and vectors
2004-03-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Save size of history dialog
* Show a nice little help message the first time Qalculate! is started
* Update Swedish translation
* "quaert" -> "quart"
* Do not insert parenthesis when completing if they already are there
* New error message when matrix has no inverse
* Make abort messages localized and nicer
* Limit width of result display text
* Use transparent pixbuf for result to not look ugly with pixmap themes
* Support newer Giac versions
2004-03-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Serious try to fix the localized decimal point and comma once and for all
* Use [] for vectors and matrices
* Use Page Up and Page Down for expression history instead to allow completion to use Up and Down keys
* huh! do not sort functions.
* "European 30/365" -> "European 30/360"
* Fix date calculations
* Add "allow_complex" property for number arguments
* Fix abs (for complex numbers)
2004-03-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Handle CLN errors better
* Font selection for expression entry
* Replace Fraction and Integer with new Number class
2004-03-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Set selected font in custom font dialog
* Save time by first destroying completion then updating list then creating new completion on update
* Do not crash when updating completion after new variable
* Bring up user interface as soon as possible
* Make completion block work
* Move recent objects to to the top of object menus
* "buttons" -> "keypad"
* Completion finished
* Ugly fix to not complete on completed
* Add units to completion if not composite
* Use g_utf8_next_char and g_utf8_prev_char
2004-03-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Advanced completion in expression
* Popup menu for resultview
2004-03-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Lower default precision
* Make history button a regular button
* Reworked GUI -- menubar, expander, history window...
* Release 0.4.2a
* Set correct name on separator again
* Fix some compiler warnings
* Fix compilation without Giac
2004-03-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Release 0.4.2
* Proofread manual
* Allow currencies to be put in front of quantity
* Cent, yen, pound and dollar signs
* Remove debug output related to Giac
* Fix some troubles printing complex numbers
2004-03-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update Swedish translation
* First manual draft finished
* Remove compiler warnings
2004-03-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Gnuplot does not like quotation signs
* Do not abort when locale not supported by C library
2004-03-05 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix unit conversion of ex. ch^2 to acre
* Some menu fixes
* More user documentation
2004-03-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Move calculate multiple roots option to result menu
* Move unit display options to a unit display submenu
* Begin writing the manual
* Add help menu item if libgnome is available
* Add build structure for gnome style user documentation
2004-03-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix exponential display in non-fractional mode with negative exponents
* Fix big mistake in log (if negative exact result, returned zero)
* Use "tab" for tab ("\t") a separator in load
2004-03-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Load CSV file as matrix function (load)
* File argument
* Replace localized decimal point with dot in plot data
* Save history (20 rows)
* Expression entry history
* "Save Result" -> "Store Result"
2004-02-28 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Calculate command line expression
2004-02-26 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Release 0.4.1
* Fix parsing of text arguments
* Replace strptime with g_date_set_parse
2004-02-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Destroy widgets after autoconnect
2004-02-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use the new file chooser
* "Select file to import" --> "Select file to export"
2004-02-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Release 0.4
* Fix tanh
2004-02-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Reenable checks for arguments that results in infinity
* Fix comparison with complex numbers (not solvable)
2004-02-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add giac functions in functions.xml
2004-02-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix binomial arguments
* Update Swedish translation
2004-02-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove PACKAGE and VERSION warnings with giac
* Permutations and combinations
2004-02-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Start even if gnuplot is not present
2004-02-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Complex numbers: log, pow, root
2004-02-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Filter out all duplicate errors
* Fix compilation without giac
* Forward: "Copy Result" menu item
* Forward: Correctly calculate divison by root with multiple solutions.
* Forward: Remove unused non-portable function.
2003-11-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Complex numbers...
* Complex number printing
* Use Newton's Binomial Formula for raised addition manager
* Binomial function
* Manager::set(const Integer*)
* Start work on complex numbers
2003-10-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show argument names when too few arguments
* Really no need to have exp, exp2 and exp10 as builtins
* Log tweaks
* More trigonometric tweaks
* Giac might actually return -1*1 (we prefer -1)
* Catch giac errors
* Define tan, asinh, acosh, atanh as sin(x)/cos(x), log(x+sqrt(x^2+1)), ...
* Handle pi correctly in trigonometric functions
* Delay calculation of inexact values
* New variable manager
2003-10-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Giac function
* Factorize in result menu
* New functions: diff, integrate, solve
* Giac support
* Do not crash when printing a manager with matrix
2003-10-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Release Qalculate-GTK version 0.3.1
* Left over missing setPrecise() in builtin functions
* Fix printing of function manager
* Fix display of only number in numerator
* Parenthesis adjustments
* Update swedish translation
* More extensive error handling for misplaced operators
* Replace "**" with "^"
* Fix parenthesis in Manager::print()
* Recreated Manager::print() from gtk drawing function
* Optional prefix for denominator
* Reworked composite unit printing
* Reworked prefix handling
* Reworked drawing of MULTIPLICATION_MANAGER
* Fix loadLocalDefinitions()
* Year and Century units
* Fix parsec, light year, astronomical unit, and torr
* Plural fixes
* Draw unit names with "_" replaced by space
2003-10-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Compability fixes for Unit.cc
* change strold to strol in HEX()
* remove ld2s()
* provide another workaround for strptime
* some warnings left
* remove llpow() as it only creates problems
* __USE_XOPEN for strptime
* Replace insert(0, 1, ...) with insert(begin(), 1, ...)
* Fix ALL warnings
* Ignore blanks in BIN(), OCT(), HEX(), BASE()
* Fix number bases dialog
2003-10-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not use scandir as Solaris does not support it
* Access hash_map header properly
* Update POTFILES.in for new glade files
* Remove #include <ext/hash_map> from Calculator.h
2003-10-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Split up glade file
* minute -> min
* Now function can have the same name as a unit or variable, but units and variables cannot have the same name
2003-10-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Release Qalculate-GTK version 0.3
* Disable convert in units dialog when no unit selected
* Revert fractional button to use combined fractional display, but treat it as normal fractional display for regular text
* Draw parenthesis around not alone manager (not power) with childs in denominator
* Add a bit more space behind italic text to not cut tall chars off
* More drawing fixes
2003-10-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Include all bytes in unicode char for unknown variables in setFunctionsAndVariables()
* Fix Manager->print(), and as below
* Display x^-y as 1/x^y in non-scientific mode
* Draw multiplication manager fixes
* Put menus before items
* More TODO
* Also add icon.xpm
* Add qalculate.h to Makefile.am to get it included in dist
* Accel fixes and additions
* Move "convert number basis" to the other menu
* Reorder some buttons to follow HIG
* Make convert unit dialog non-modal
2003-10-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Display ^0.5 as square root
* Fix display of ugly -x^-0.5 (still ugly but no duplicate ones and spaces)
* Stop display errors a bit more...
2003-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not delete selection on sqrt button clicked but act as with the other functions
* Make answer variables a special case which cannot be edited and does not display result in variable dialog
* Change "first"/"second" axis to "primary"/"secondary"
* Put axis after smooth
* Fix rms(), stdev(), stdevp()
* Fix error in setFunctionsAndVariables that stopped unknown variables after something was set
* Remove CVS version title
* Write something in AUTHORS and NEWS
* Hidden property in function and unit edit dialogs
* Hide some annoying composite units (m/m and m2/m2)
* Hide hidden items in menus
* New hidden property for ExpressionItem (meant for some composite units and sub functions)
2003-10-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Finally implement angle units and allow direct specification of angle unit in trigonometric functions
* rem and rad units renamed to rem_radioactivity and rad_radioactivity
* Some swedish translation updates
* Some tooltip updates
* Some TODO updates
* Fill in the last argument titles and add some descriptions
* Set min arguments to zero if lower (and max to -1)
* Argument names and descriptions for matrix and vector functions
* Rename title "Power" with "X raised to Y" to solve translation conflict with the category "Power"
* Fix 0^0 warning
2003-10-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* If add argument button is not sensitive, modify argument instead on enter
* Fix arguments for process()
* Titles for functions and arguments in utilities category
* Put buttons in first tab
* Default to show buttons
* Remove quotes from default values in insert function dialog
* Matrix multiplication error message
* Better error message for misplaced operators
* Updated swedish translation
* More argument names
* Fix category selection after editing
* Argument names for all geometry functions
* Do not use "free" for argument == NULL but printlong() of default argument
2003-10-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Do not add extra space after matrix in GTK widget
* Update rank() and sort() to new comparison that not only allows fractions
* Update min() and max() to new comparison that not only allows fractions
* Go back to builtin sum() function as sum() is used often and csum() is rather slow
* eurocent and cent
* Fix yearfrac() for basis = 1
* More TODO
* Category "Matrices" -> "Matrices & Vectors", "Financial" -> "Finance"
2003-10-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Finally make class variables in Manager protected
* setPrecise(fraction()->isPrecise()) after operation directly on Manager::fraction()
* Change output of "log" button to log10
* Write more in TODO
2003-10-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Update plot on add/modify/remove
* Use only one gnuplot process/window and close it on exit
* Fix crach on create new variable dialog
* Delete the submenus, not the menu item, when updating
* Do not update treeviews if not created
* Save plot settings
* Switch to enums for style and smoothing
2003-10-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More plot stuff
* Change step to steps
* Make that the second tab page is realised
* Save plot as postscript, eps, png, svg, fig or latex
* Set a nicer font for gnuplot
* Plot dialog: tabwidget, paired matrix, save
* Plots: logscale, style, separate smoothing for each line, title, grid, color, linewidth, borders
* Set timeout for wget and error on fail
* Check if wget and gnuplot is available
2003-10-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Plot dialog
* Lots of plotting stuff
* Hide on destroy and delete events for non-modal windows
* Place terms with negative sign in the back when not using scientific sorting
* Do not display more than one minus
* Change compare() in Manager to sortCompare() and add real compare() function
* Plot vector
* Plotting with gnuplot
* Fix crash with no argument definitions and variable number of arguments
* Do not recreate currencies, just change the relation
2003-10-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fully enable builtin units
* Do not print the same error message more than once
* Fetch exchange rates from ECB
* Fix crash by removing new line for alternative manager and gettextize the "or" while we are at it
* Root functions non-abs
* Fix argument check on alternative manager
* Remove unnecessary gtk_main_iteration() as they create lots of problems
* Do not unref wrong Manager in conversion in units dialog
* Fix check of arguments in functions with unlimited number of arguments
* Remove (again) prepended "1" for composite units
* Fix prefixes
2003-10-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Allow disabling of multiple roots
* "Recently Used"-menu
* Fix rounding of negative numbers
* Fix adding ALTERNATIVE_MANAGER to ALTERNATIVE_MANAGER
* Change GUI code to allow unrestrained category depth
* Load builtin unit definitions even if we have no such
* Do not write active and precise attributes when true
* Organize definitions files in a category tree structure
* Make execute button in insert function dialog non-stock
* Change button text to "Insert"
* Fix insert function with undefined arguments
* Use a frame for description in insert function dialog
2003-10-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use & for &
* Fix NOT
* Fix signedness function (and comparisons)
* Replace "<" with "<" and ">" with ">"
* Display NOT_MANAGER
* Make it configurable in preferences
* Do not use annoying prefixes (hekto, deka, centi, deci) by default
* Change unit conversion from printing value to using a value id as was originally intended
* Delete string alternative "," when switching locale
* #ifdef out fenv.h and floating point exceptions as they are only obstructing portability when using CLN
* Cleanup
* Warning function
* Disable message function for now
2003-10-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Updated swedish translation
* Do not actually lower the precision below 10 to prohibit overflow
* Do not act when setting the initial value of spinbuttons
* Precision and decimals dialog need not be modal
* Actually load the correct nodes for the locale
* New simpler algorithm for reading function arguments, which handles citations correctly
* Accept zero length strings
* Concatenate and Length functions
* Save function
2003-09-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Execute expression when updating result display if expression has changed
* Do not display more than 1500 digits in result display widget and not more than 500000 digits in history (works for me at least)
* Restrict display time in variables dialog
* Restrict value length if variables dialog
* Delay calculation of variables
* Remove signs menu
* Try to speed up determinant (not very succeful)
2003-09-29 Hanna Knutsson <hanna.knutsson@protonmail.com>
* A little icon for the window
* Update display outside of thread
* Do not reverse order when transforming manager
* Merge boolean operations into Manager class to enable unsolved operations
* Make sure that thread actually is canceled before resuming
* Change log to log10 and logn to log
* Ignore syntax error function without parentesis are space before argument
* New better algorithm for Calculator::setFunctionsAndVariables()
* Nicer functions, variables and units dialogs
* Show a nice progress dialog
* More information (syntax and arguments) in description in functions dialog
* Sort categories in edit dialogs
2003-09-27 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Safer threads
* Switch unit->name() to short name and add singular to enable translation
* Enable xml data translation
* Use less attributes in xml
* Implement GUI editing of argument rules
* Replace empty optional value with default value
* Fill in default values in insert function dialog
* Add ability to abort long calculations
* ...and slow result display
2003-09-25 Hanna Knutsson <hanna.knutsson@protonmail.com>
* New condition for functions which can test the relation between arguments
* Error function
* Boolean operators
* For (loop) function
* Fix crash on delete inactive definition in GUI
* Definition edit fixes
2003-09-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Move defintions to library and PACKAGE_DATA_DIR/qalculate
* Place local definitions in ~/.qalculate/definitions and load everything in that directory
* XML definitions files
* Update function edit dialog to new argument definitions, and turn function expression entry into a textview
* Furthering argument definitions: new Argument classes that tests type and value
* Fix parenthesis madness and handle missing left parenthesis
2003-09-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* ExpressionItem::isRegistered()
* Once again constants -- new DynamicVariable class that recalculates value when precision has changed
* Fix ...E-...
* Fix root for negative results
* Fix log for negative results
* Fix display of ...E...
* Fix infinite loop with prefixes <= 10E-1
* Check file format and version of definitions file
2003-09-21 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix error message when too many arguments
* Change "years_between_dates" to "yearfrac"
* Fix day counting basis (hopefully gnumeric has done it right)
* More financial functions
* Fix mod, rem and frac
* Better RPN support
2003-09-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* RPN Mode
* Clean up EqItem.cc
* Add variables for constants functions
* Load definitions in exact mode
* Reset (and restore) mode when loading definitions
* Lots of tooltips (too many perhaps?)
* Some definitions fixes
* Function edit dialog: turn argument entry into a list view and add argument type
* Do not locally save global deactivations
2003-09-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Big restructuring to fix editing of global definitions, including deactivation
of definitions and a new virtual ExpressionItem class
* More error messages in matrix functions
* Check if matrix operations were successful
* Correct bad setPrecise(false) call in matrix
* Speed up csum function for large vectors in statistical functions
* Fix addition^integer
* Fix display of 1/-x
* Fix sqrt()
* Fix display of fraction with 'E'
* Fix display of 5*5^x
* Fix detection of long prefixes
* Fix 'E' (now we can have it in names)
* Type label, spin buttons, date picker etc. in insert function dialog
* Argument type
2003-09-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix insert function dialog
* Add scrollbars to table in matrix edit dialog
* CSV file import
* Lots of statistical functions: range, harmonic mean, geometric mean, trimmed mean, winsorized mean, quadratic mean, quartile, decile, percentile, interquartile range, variance, standard error, mean deviation, pearson, spearman's rho, covariance, correlation, pooled variance, paired t-test, unpaired t-test...
* Add limits to custom sum function and allow references to other than current element (x_i-1)
* Limits
* Clean up base conversion functions
* Fix If function
2003-09-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Sort function
* Buttons to set if precise in variable and unit edit dialogs
* Exact mode
* Use vectors in max, min, mode and median
* Make constants functions for more flexible precision
2003-09-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Change behavior of decimals settings
* CLN support (requirement for now, in place of GMP)
* Disable gnome support in glade file
2003-09-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* More accurate roots using Newton's Method with the libc function as initial value
* Require GMP (it is not a priority right now to fix my own integer implementation)
* GUI for edit/create matrix/vector
* Remove repaint artifacts
* Rank function
2003-09-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Pearson Correlation and Spearman's rho (still needs rank function)
* Replace hardcoded statistical functions
* Utility functions: csum (Custom sum), process (Process vector components)
* Vector (\v) in user functions
* Function function for immediate creation and execution of a custom function
* Indicate infinite sequence of decimals (configurable)
* Custom font selection
* Vector
* Better alignment
2003-09-07 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use GtkDrawingArea to make result display nicer
* More matrix functions: cofactor, adjoint, inverse
2003-09-03 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Matrix functions: determinant (det), identity, transpose, element, columns, rows, matrix
* Multiple solutions (4^0.5 = 2 or -2)
* More work on matrices
2003-09-02 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Beginning of matrix support
* Fix zero division
2003-09-01 Hanna Knutsson <hanna.knutsson@protonmail.com>
* factorial function and !
* frac and int functions
* Menu items for fractional representation
* Turn "use prefixes" into check menu item
2003-08-31 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Move builtin functions to fraction system
* Reactivate display modes, decimals and precision
* Use GMP if available in Integer class (much faster)
2003-08-30 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Show if result is exact or not
* Arbitrary precision
* Move from long double to Fraction
2003-08-24 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Decimal string to fraction
* Date functions (for financial functions)
* Fixes
2003-08-23 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Localized dot and more
2003-08-22 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fractions and restructuring
2003-08-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* CALCULATOR macro (removes Calculator object from all classes)
* New Prefix class and new get/add prefix functions; prefixes stored in a sorted vector
* New get Function/Variable/Unit(index) functions
2003-08-20 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fraction button
* Fraction Manager
* New Fraction class
2003-08-19 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Add title label to insert function dialog
* Remove duplicate adding of answer variables, and remove from global definitions file... and gettextize
2003-08-18 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Qalculate! version 0.2 released
* Last minute fixes
* More unicode
* Fix display of exponent of exponent
* Put unicode chars on buttons in code and add option to disable unicode signs
* Unicode math operators
* Save version info to configuration file
* Update version number
2003-08-17 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Only put "1 " in front of unit in toplevel
* Fix 5*5^m (endless loop in Manager::convert)
* Unscientific mode gives inexact result display -- disable for now
* Disable installation of old German translation (will enable again after v0.2)
* Create en_GB and en_US locales to get that nice square root sign
* Do not shrink result label on clear
* Do not expand menu buttons
* Make functions dialog a bit nicer
* Make units dialog a bit nicer
* More energy and pressure units
* Some constants
* Write variables to file with maximum precision
* Show variable title in menu and tree
* Unit expression conversion fixes
* Make operators wrap selection in parenthesis instead of deleting it, thus they operate on the result after execute
* Insert ^ directly instead of waiting for another key press.
* Fix annoying repositioning of text cursor in n-bases dialog
* Update conversion in units dialog after focus out event in entries
* Remove empty parenthesis after zero argument functions
* Fix disabling of units
* Fix unclosed brackets
* restrict abs() to numbers
* Change Function::name(string), Unit::title(string), etc. to setTitle(), setName()
2003-08-16 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Google style in expression conversion (ex. 5 m to ft = 16.4 ft)
* Small unit conversion fix (1 km/1 kg => 1 km/kg).
* More units.
* Fix loading of alias unit that is defined before its base unit in file
* Modify priotrity for calculations so that inexplicit multiplication is calculated before division (2/2(x) = 2/(2*x)) and functions (sin 2x(x) = sin (2x*x), but sin(2x)(x) is still sin(2x)*x)
* Some restructuring
* Unbreak brokeness from last fix
* Move three small dialogs to Glade
* Convert button
2003-08-15 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix bracket madness breaking unbrackened division (!)
* About dialog
2003-08-14 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Fix loading of argument names for builtin functions
* Do not add argument names in code for builtin functions, read from definitions file instead
* Fix crash when creating new unit
* Disable OK button for editing global definitions until structure is sorted out
* Beautify dialogs
* Functions, variables and units buttons in main window
* Sorting menus
* Tree lists implemented for units, variables and functions dialogs
* Submenus implemented for unit, variable and function menus
* Connect "convert to"-button in unit managaer to new conversion system
* Complete set of SI units
* Various fixes
2003-08-13 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Remove duplicate functions
* Do not save unchanged global definitions in users definitions files
* Selectable prefix in result
* Fully functional unit conversion!
2003-08-12 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Interpret "apple" as an unknown variable named apple
* Add base conversion dialog
* Beautify units dialog
* Store pointer to unit in GUI to simplify the Unit/ComplexUnit mess
* Enable editing/creation of composite units
* New Greatest Common Divisor (gcd) function
* First try at differentiation
* Fix division
2003-08-11 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Beautify insert function dialog
* Populate category combos
* Turn base unit combo into entry as it probably is not a good idea to fill the combo with all units
* Gladeify the variable and function edit dialogs hidden callbacks.cc (gladeification finished?)
* Beautification of dialogs
* Huge gladeification of signals and widget references
2003-08-10 Sven Herzberg <herzi@gnome-de.org>
* data/qalculate.glade: don't know what exactly, but i'm sure that we
got rid of one c dialog more
* src/callbacks.cc:
* src/interface.cc:
2003-08-10 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Use <sup></sup> for all exponents for consistency
* New elegant and intelligent sorting, not only for internal purposes
* Updated swedish translation.
* Gettextized error messages.
* Updaterad Calculator::error().
* Only enable prefixes in front of units
* Fix disable/enable variables/functions/units/unknown
* Found true evil in Manager::sort(). This should solve many problems. :-)
* Enable binary output for larger numbers
* Fix nested functions
* Fix prefix followed be unit
* Fix functions without parenthesis
* correct widget name (units_option_menu_to_unit)
* handle long result by making the window not resizable and the result label wrap
2003-08-09 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Swedish translation
* More strings to translate
* Binary output
* Fix BASE()
* Fix prefixes in expression
* Added ability to disable unknown variables
* Support unsolved function -- now log(x) returns log(x) instead of the result of log(0)
* Fix prefix display mode (only use in front of units to avoid confusion and support exponents)
2003-08-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Set LC_NUMERIC to "C" to make strold() happy
* Minor restructuring in preparation for different decimal points
* Comment out debug output. Now (x+y)^50 takes 1 instead of 100 seconds. For those interested, the result of (x+y)^100 is 24287 pixels wide...
2003-08-08 Sven Herzberg <herzi@gnome-de.org>
* data/qalculate.glade,
* src/interface.cc: glade-ified the preferences dialog
2003-08-08 Sven Herzberg <herzi@gnome-de.org>
* data/qalculate.glade,
* src/interface.cc: glade-ified the units dialog
* po/de.po: updated translation
2003-08-08 Sven Herzberg <herzi@gnome-de.org>
* src/interface.cc: removed unneccessary variables
2003-08-08 Sven Herzberg <herzi@gnome-de.org>
* data/qalculate.glade,
* src/interface.cc: glade-ified the variables dialog
2003-08-08 Sven Herzberg <herzi@gnome-de.org>
* src/interface.cc: removed unneccessary variables
2003-08-08 Sven Herzberg <herzi@gnome-de.org>
* data/qalculate.glade,
* src/callbacks.cc,
* src/interface.cc: finished moving the menus
2003-08-08 Sven Herzberg <herzi@gnome-de.org>
* data/qalculate.glade,
* src/callbacks.cc,
* src/interface.cc: moving the menus to a (hidden) menubar to solve a warning regarding an accelerator group
2003-08-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Move generated menus one step up
* Add finalize() after conversion in callbacks.cc
2003-08-08 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Some more fixes that I do not remember
* Fix (x+y)^(6+n)
* Fix kWs = W^2 * s^2 in Calculator.cc
* Do not convert units during the whole calculation, do it in finalize() afterwards instead
* Make units work even better.
* Move OCT, HEX, BIN and BASE functions to category "Number Bases"
2003-08-08 Sven Herzberg <herzi@gnome-de.org>
* configure.in: added -Wall stuff again (was just a typo)
* src/interface.cc: removed some unneccessary variables from create_window
2003-08-08 Sven Herzberg <herzi@gnome-de.org>
* data/qalculate.glade: includes the complete main window now
* src/callbacks.cc: removed the GtkHSeparator (the're not used anymore)
* src/interface.cc: moved the whole main window to the glade file
2003-08-07 Sven Herzberg <herzi@gnome-de.org>
* data/qalculate.glade: added the expression menu and the result menu
* po/de.po: updated translation
* src/callbacks.cc: glade updates
* src/interface.cc: glade updates
2003-08-07 Sven Herzberg <herzi@gnome-de.org>
* src/interface.cc,
* src/interface.h,
* src/main.cc: as the return value of create_window was only used to display the widget, made create_window a void method and display widget from there
2003-08-07 Sven Herzberg <herzi@gnome-de.org>
* configure.in: added libglade dependency
* data/Makefile.am: added glade file
* data/qalculate.glade: user interface definition
* src/callbacks.cc: removed the extern GtkWidget *window
* src/interface.cc: started migration to glade
* src/interface.h: started migration to glade
* src/main.cc: started migration to glade
2003-08-07 Sven Herzberg <herzi@gnome-de.org>
* .cvsignore: cvs update has less warnings now
* configure.in: added de to ALL_LINGUAS
* data/qalculate.desktop.in: fixed the starter
* po/.cvsignore: cvs update has less warnings now
* po/de.po: updated german translation
2003-08-07 Sven Herzberg <herzi@gnome-de.org>
* data/Makefile.am: added fixes for kde pre-3.2 (aka stable)
2003-08-07 Sven Herzberg <herzi@gnome-de.org>
* .cvsignore: cvs update has less warnings now
* configure.in: some beautification (will fix -Wall later this day)
* data/.cvsignore: cvs update has less warnings now
* data/Makefile.am: added desktop file
* data/qalculate.desktop.in: desktop file template
* po/.cvsignore: cvs update has less warnings now
* po/POTFILES.in: added data/qalculate.desktop
* po/de.po: added german translation
2003-08-07 Sven Herzberg <herzi@gnome-de.org>
* src/main.cc: some beautification
* src/main.h: made enums from #defines (are the values relevant?)
2003-08-06 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Removed some debug output
* Fix (x+y)^5, but unfortunately not (x+y)^6...
* Even better unit conversion.
* Change Ctrl+V to Ctrl+M for manage variables
2003-08-06 Sven Herzberg <herzi@gnome-de.org>
* Makefile.am: make dist works now
* configure.in: added data/Makefile.am
* data/.cvsignore: cvs update has less warnings now
* data/Makefile.am: make dist works now, make install too
* po/.cvsignore: cvs update has less warnings now
2003-08-06 Sven Herzberg <herzi@gnome-de.org>
* .cvsignore: cvs update has less warnings now
* Makefile.am: added data as subdir
* acconfig.h: removed (templates are deprecated)
* configure.in: added libtool
* data/Makefile.am: added config file installation
* po/.cvsignore: cvs update has less warnings now
* src/.cvsignore: cvs update has less warnings now
* src/Makefile.am: switched to libtool now
* src/calclib/.cvsignore: cvs update has less warnings now
* src/calclib/Makefile.am: using libtool now
2003-08-04 Hanna Knutsson <hanna.knutsson@protonmail.com>
* Optional arguments for functions
* More functions...
* Implemented if...then...else function
* "config" -> "definition"
* Added Execute button to insert function dialog
* Added some financial functions
|