Skip to main content

Combines dataArrays with attributes for fitting plotting and analysis including models for Xray and neutron scattering

Project description

The aim of Jscatter is treatment of experimental data and models:

  • Reading and analyzing experimental data with associated attributes as temperature, wavevector, comment, ….

  • Multidimensional fitting taking attributes into account.

  • Providing useful models for neutron and X-ray scattering form factors, structure factors and dynamic models (quasi elastic neutron scattering) and other topics.

  • Simplified plotting with paper ready quality.

  • Easy model building for non programmers.

  • Python scripts/Jupyter Notebooks to document data evaluation and modelling.

Binder citation install license pyversion Read the Docs Beginners Guide

Jscatter Logo

Main concept

  • Data are organised in dataArray/dataList with attributes as .temperature, .wavevector, .pressure and methods for filter, merging and more.

  • Multidimensional, attribute dependent fitting (least square Levenberg-Marquardt, Bayesian fit, differential evolution, regularisation, …).

  • Provide relative simple plotting commands to allow a fast view on data and possible later pretty up.

  • User write models using the existing model library or self created models.

    The model library contains routines e.g. for vectorized quadrature (formel) or specialised models for scattering as formfactor, structurefactor, dynamic and biomacromolecules.

Documentation

Documentation located at http://jscatter.readthedocs.io. A number of examples how to use Jscatter is provided and can be run from Jscatter.

A short example how to use Jscatter

import jscatter as js

i5=js.dL(js.examples.datapath+'/iqt_1hho.dat')     # read the data (16 sets) with attributes
# define a model for the fit
diffusion=lambda A,D,t,wavevector,elastic=0:A*np.exp(-wavevector**2*D*t)+elastic

# do the fit
i5.fit(model=diffusion,                     # the fit function
       freepar={'D':[0.08],'A':0.98},       # start parameters, "[]" -> independent fit
       fixpar={'elastic':0.0},              # fixed parameters
       mapNames={'t':'X','wavevector':'q'}) # map names from the model to names from the data

p=js.grace(1.2,0.8)                         # open a plot
p.plot(i5,symbol=[-1,0.4,-1],legend='Q=$q') # plot with Q values in legend
p.plot(i5.lastfit,symbol=0,line=[1,1,-1])   # plot fit as lines
p.save('test.agr')

** Released under the GPLv3 **

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jscatter-1.8.3.1.tar.gz (19.6 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

jscatter-1.8.3.1-cp314-cp314-manylinux_2_34_x86_64.whl (33.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ x86-64

jscatter-1.8.3.1-cp314-cp314-macosx_15_0_arm64.whl (31.5 MB view details)

Uploaded CPython 3.14macOS 15.0+ ARM64

jscatter-1.8.3.1-cp313-cp313-manylinux_2_34_x86_64.whl (33.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

jscatter-1.8.3.1-cp313-cp313-macosx_15_0_arm64.whl (31.5 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

jscatter-1.8.3.1-cp312-cp312-manylinux_2_34_x86_64.whl (33.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

jscatter-1.8.3.1-cp312-cp312-macosx_15_0_arm64.whl (31.5 MB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

jscatter-1.8.3.1-cp311-cp311-manylinux_2_34_x86_64.whl (33.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

jscatter-1.8.3.1-cp310-cp310-manylinux_2_34_x86_64.whl (32.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

File details

Details for the file jscatter-1.8.3.1.tar.gz.

File metadata

  • Download URL: jscatter-1.8.3.1.tar.gz
  • Upload date:
  • Size: 19.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for jscatter-1.8.3.1.tar.gz
Algorithm Hash digest
SHA256 20464965ec14266a32d166e2a0566b66456f6ced3980d966e93feeb52958b7f5
MD5 1052570340307ed5f829f239964c2611
BLAKE2b-256 b5603a1769aa47e688e003b0c86e98bdd8174a7a84af414f92b1272d03a4838c

See more details on using hashes here.

File details

Details for the file jscatter-1.8.3.1-cp314-cp314-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for jscatter-1.8.3.1-cp314-cp314-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 6b75f6ec4d73518cb4fd36c1363fc615d510a104b9c12d698e5455935d0c4996
MD5 18aec8a5065e7d09caba0cd056c8e593
BLAKE2b-256 8daca11494e4a4aa230649c572e7b496475ccaaa30207b800ba96623abac6c58

See more details on using hashes here.

File details

Details for the file jscatter-1.8.3.1-cp314-cp314-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for jscatter-1.8.3.1-cp314-cp314-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 a490eb879ebbf72cb6b5b3c2ff3495d07c84b0476a4a2b7c73152ca51461d4f2
MD5 8da4950a766ad60c039e73cbc4884525
BLAKE2b-256 3b9b975efba0aa889f31c9ee6ad24e60a642dc3efadbb9210a37065c1d19f723

See more details on using hashes here.

File details

Details for the file jscatter-1.8.3.1-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for jscatter-1.8.3.1-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 f6a8a1e6fc4fa360a35648aa5ba9936d899e4deb197c9e28a2eb50dcca094ba6
MD5 0a57c05bb955bfc344851c0dc6af7839
BLAKE2b-256 25aada04ff2c8caf5ff4bb6a96cff28169f32ae2d393c7b9f042355136ce6dc7

See more details on using hashes here.

File details

Details for the file jscatter-1.8.3.1-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for jscatter-1.8.3.1-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 112a752009664bb8a5dec582e1cfe484bab9c7f609a3cb8fc85f9bee520205da
MD5 01a3a6b6b515849346b8b58b89674c3b
BLAKE2b-256 99951ea2bc381117086d90647eb2582545b556b7fe8c65297f9bcf791c72c8c8

See more details on using hashes here.

File details

Details for the file jscatter-1.8.3.1-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for jscatter-1.8.3.1-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 4bdb960ef6d494a46aca0a9a9c9ca1650c540d7a836d07e5fccd77065ba36d14
MD5 a0a973300de3cebfb263e2fb865600d4
BLAKE2b-256 83715a9884c87bcdea8f8b903497e984f923caf795109103b319ce39b9e59b69

See more details on using hashes here.

File details

Details for the file jscatter-1.8.3.1-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for jscatter-1.8.3.1-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 a497434afcd339444ca065ee9e6da15e84f76453b5c242e07a78b620dbba51ef
MD5 a58cb52164031901e6cab326ea8e3066
BLAKE2b-256 c1d08f396735f95d36351f39b4d4289847c9278645a1fd4068c821841cd1257a

See more details on using hashes here.

File details

Details for the file jscatter-1.8.3.1-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for jscatter-1.8.3.1-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 548c9ca7005864bcfe7407f3c25390cbdc9b79001db334c3a61f5d3ae4dfe495
MD5 7d1240457f38ae1d83fdca6b85e485c1
BLAKE2b-256 9dc5902fccc1c86becc5a868c852be353d8576342da8444c6e3608a97cf4f8b9

See more details on using hashes here.

File details

Details for the file jscatter-1.8.3.1-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for jscatter-1.8.3.1-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 23be28c1fd7c34bb5099a6960f1c1dab91de31197fe4a5d7fa56bc81d7acfd47
MD5 cb64955cf83d736ba30e052d48a29675
BLAKE2b-256 48339aa76efa602365ef4947e37e5b9d51d8061cad0881f16251bd591c0b3a59

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page