Saravanan666/pypi-org huggingface dataset:
Package: c2.recipe.bitbucketbk
RequirementThis recipe supports Python 2.6+, because using ‘json’ module.InformationCode repository:https://bitbucket.org/cmscom/c2.recipe.bitbucketbkQuestions and comments toterada@cmscom.jpReport bugs athttps://bitbucket.org/cmscom/c2.recipe.bitbucketbk/issuesSimple usageModify buildout.cfgparts =
   ...
   bitbucketbk

[bitbucketbk]
recipe = c2.recipe.bitbucketbk
username = xxxxxxxxxxxxx
password = xxxxxxxxxxxxxxxxxx
location = /backups
ignore_project =
    xxxxxx1
    xxxxxx2
isseu_backup_count = 3Run the buildoutbin/buildout -NYou can use backup scriptsbin/bitbucketbkYou will see backups in/backups.Cron job integrationFor example[backupcronjob]
recipe = z3c.recipe.usercrontab
times = 0 12 * * *
command = ${buildout:directory}/bin/bitbucketbkTODOissues backupadding color on Excel data, (eg. new is RED)Detailed DocumentationSupported optionsThe recipe supports the following options:usernameusername of bitbucket.orgpasswordpassword of bitbucket.orglocationbackup location
default : buckupsignore_projectoption
Listing project name, if do you have no backup projectisseu_backup_countdefault 3
Number of backup data for issueExample usageWe’ll start by creating a buildout that uses the recipe:>>> write('buildout.cfg',
... """
... [buildout]
... parts = bitbucketbk
...
... [bitbucketbk]
... recipe = c2.recipe.bitbucketbk
... username = %(username)s
... password = %(password)s
... location = %(location)s
... """ % { 'username' : 'value1', 'password' : 'value2', 'location' : 'value3'})Running the buildout gives us:>>> print 'start', system(buildout)
start...
Installing bitbucketbk.
Unused options for bitbucketbk: 'location' 'password' 'username'.
<BLANKLINE>BackupCallingbin/bitbucketbk>>> import sys
>>> write('bin', 'bitbucketbk',
...       "#!%s\nimport sys\nprint ' '.join(sys.argv[1:])" % sys.executable)
>>> dontcare = system('chmod u+x bin/bitbucketbk')By default, backups are done invar/bitbucketbk:>>> print system('bin/bitbucketbk')
...ContributorsManabu TERADA, AuthorChange history1.0b7 (2012-09-04)modify bug fixed for more issue function [Manabu TERADA]1.0b6 (2012-09-02)modify bug fixed for getting issue limit number, max to has issues [Manabu TERADA]1.0b5 (2012-08-26)modify bugs for using api [Manabu TERADA]modify getting issue limit number of from 15 to 5000 [Manabu TERADA]1.0b4 (2012-08-26)modify bugs for getting issue comments [Manabu TERADA]1.0b3 (2012-08-26)modify buckup function comment of issue [Manabu TERADA]any number of issue backup data [Manabu TERADA]1.0b2 (2012-08-25)Backup of issues by Excel data, but ignore comment yet [Manabu TERADA]Ignore Don’t get repo, if main_branch is null for maybe change API spec which ismain_branch. [Manabu TERADA]1.0b1 (2012-01-17)Adding property ‘ignore_project’ [Manabu TERADA]1.0a2 (2012-01-08)Don’t get repo, if main_branch is null. [Manabu TERADA]1.0a1 (2012-01-08)Created recipe with ZopeSkel [Manabu TERADA]Created base function & supported hg only, (no supporting git yet) [Manabu TERADA]Download
Package: c2.sample.csvworkflow
IntroductionThe collective.wtf is a product that applies csv formatted workflow to plone workflow.
The c2.sample.csvworkflow is a sample workflow application that uses collective.wtf a base product.
This application have utility functions to ease plone workflow scheme setting.DependenceTo load csv formatted workflow, collective.wtf is required.
This product will also install it automatically.InstallTo install c2.sample.csvworkflow on your system, add c2.sample.csvworkflow in eggs of buildout.cfg.eggs =
    c2.sample.csvworkflowTestingExecution command is following.$ ./bin/instance test -s c2.sample.csvworkflow     # Case of Plone3.x$ ./bin/test -s c2.sample.csvworkflow     # Case of Plone4.xChangelogVersion : 1.1c2.sample.csvworkflow was released on 18th June 2010.
It can be applied to the Plone4.
Package: c2.search.customdescription
IntroductionThis package gives Google or Yahoo like search result view for Plone.Plone default is using content description for search result page.This package will display a part of paragraph with searching word in placed. The part of paragraph may be a body text, a title, a description of the content.This package adds SearchableText on metadata in portal_catalog.warning: size of index data may be became big.requirementPlone 3.x (Tested by Plone 3.3.1 on MaxOS X 10.5)Changelog1.0b3 (2010-02-24)Bug fixed for UnicodeDecodeError1.0b2 (2010-02-12)Fixed cutting text and highlight for 2 or more wordsModify for full width space1.0b1 (2010-02-02)Fixed bug, When a Noting Search string.1.0a2 (2010-01-09)Fixed bug, When a Noting metadata.1.0a1 (2010-01-08)Initial releasec2.search.customdescription InstallationWhen you’re reading this you have probably already runeasy_install c2.search.customdescription. Find out how to install setuptools
(and EasyInstall) here:http://peak.telecommunity.com/DevCenter/EasyInstallGetpythonproductsand install it via:python setup.py install --home /path/to/instanceinto your Zope instance.Create a file calledc2.search.customdescription-configure.zcmlin the/path/to/instance/etc/package-includesdirectory.  The file
should only contain this:<include package="c2.search.customdescription" />Alternatively, if you are using zc.buildout and the plone.recipe.zope2instance
recipe to manage your project, you can do this:Addc2.search.customdescriptionto the list of eggs to install, e.g.:[buildout]
...
eggs =
    ...
    c2.search.customdescriptionTell the plone.recipe.zope2instance recipe to install a ZCML slug:[instance]
recipe = plone.recipe.zope2instance
...
zcml =
    c2.search.customdescriptionRe-run buildout, e.g. with:$ ./bin/buildoutYou can skip the ZCML slug if you are going to explicitly include the package
from another package’s configure.zcml file.
Package: c2.search.fuzzy
IntroductionThis system creates index for fuzzy search when content created and/or modified.We can get fuzzy suggestions on search page, if site has near words.Developing repository :https://bitbucket.org/cmscom/c2.search.fuzzyIssue tracker :https://bitbucket.org/cmscom/c2.search.fuzzy/issueJapanese siteYou shuld install MeCab and c2.splitter.mecabja.
You can find PyPI :http://pypi.python.org/pypi/c2.splitter.mecabja.
The site has detail information.Special thanksSupported byike@rokujohitoma@hirataraReferred sitehttp://blog.notdot.net/2010/07/Damn-Cool-Algorithms-Levenshtein-AutomataChangelog1.0a6 (2018-03-07)Only Support Plone 5 [Manabu TERADA]Support SQL DB back end [Manabu TERADA]Bug fix for 2nd word length [Manabu TERADA]1.0a5 (2012-10-10)Remove debug code in JavaScript. [Manabu TERADA]1.0a4 (2012-10-07)Check and no depend MeCab. [Manabu TERADA]1.0a3 (2012-09-08)Remove catalog.xml because don’t need it. [Manabu TERADA]Modify bug fix for fuzzy-search template. [Manabu TERADA]1.0a2 (2012-09-07)Modify bug fix for Plone 4.1/4.2, because it dose not havecmf.ManagePortal. [Manabu TERADA]1.0a1 (2012-09-07)Initial releasec2.search.fuzzy InstallationAlternatively, if you are using zc.buildout and the plone.recipe.zope2instance
recipe to manage your project, you can do this:Addc2.search.fuzzyto the list of eggs to install, e.g.:[buildout]
...
eggs =
    ...
    c2.search.fuzzyTell the plone.recipe.zope2instance recipe to install a ZCML slug:[instance]
recipe = plone.recipe.zope2instance
...
zcml =
    c2.search.fuzzyRe-run buildout, e.g. with:$ ./bin/buildout -NYou can skip the ZCML slug if you are going to explicitly include the package
from another package’s configure.zcml file.settingsquick installYou need installc2.search.fuzzyat quick install.index buildYou can findFuzzy Search Settingsin add-on setting to control-panel.
And, you can access tohttp://YOUR-PLONE-SITE/@@fuzzy-search-controlpanelfrom the link.
Last, You should click toRebuildbutton.
Package: c2.search.kananormalizer
IntroductionNormalize Katakana to Hiragana for ZCTextIndex.
When you do “quick install”, the setting of Plone instance will change from default Normalizer (I18NNormalizer) to this normalizer (KanaNormalizer)
And, You shuld do “ReIndex” manually.Japanese informaiton.アドンの適用(“quick install”)が必要です。その後、ZMIから手動で “ReIndex”を行ってください。検索インデックス(ZCTextIndex) のノーマライズ機能で、カタカナをひらがな置換えます。検索時、ひらがなとカタカナを同一視します。
副作用として、ひらがな・カタカナ混じりの文字をミスヒットする可能性があります。
(例: 「アクセスして」を「あくせすして」としますので、「すし」というキーワードに検索ヒットしてしまいます)Changelog1.0a1 (2015-06-26)First alpha release [terapyon]
Package: c2.splitter.janome
A Japanese aware splitter for Plone/Zope, that morphological analyze strings
by janome.
janome is a Japanese morphological analysis engine written in pure Python.https://github.com/mocobeta/janomeInstallationAddc2.splitter.janometo the list of eggs to install, e.g.:[buildout]
...
eggs =
    ...
    c2.splitter.janomeRe-run buildout, e.g. with:$ ./bin/buildout
Package: c2.splitter.mecabja
IntroductionThis package is Japanese language splitter for MeCab.LicenseGNU General Public License (GPL)PrerequisiteThis package should work with UNIX related systm, such as Linux, FreeBSD, MacOS X.Python2.4.3 or higher.MeCab 0.9 or higher, tested with MeCab 0.93.Dictionary-charset: UTF-8 and Site-charset: UTF-8Require packeagemecab-python, it is auto included.THANKSMJSplitterhttp://zope.org/Members/mojix/MJSplitter/Michiharu ‘Zope Junkie’ Sakurai aka mojixChangelog1.0b3 (2018-03-07)bug fix for import error [terapyon]1.0b2 (2012-09-02)modify function args refactoring1.0b1 (2012-08-16)Beta releaseChange packaging fromMTJSplitterSupport yomi function and getting only Verb. and Noun..c2.splitter.mecabja InstallationAddc2.splitter.mecabjato the list of eggs to install, e.g.:[buildout]
...
eggs =
    ...
    c2.splitter.mecabjaRe-run buildout, e.g. with:$ ./bin/buildout -NMeCab installInstall MeCab:% tar zxfv mecab-X.X.tar.gz
% cd mecab-X.X
% ./configure
% make
% make check
% su
# make installMake sure the directory of library path. For example,
‘libmecab.so’ should be in /usr/local/lib on the
CentOS Linux.Check the path ‘/usr/local/lib’ is  written in ‘/etc/
ld.so.conf’. If not, add ‘/usr/local/lib’ then execute#/sbin/ldconfigas root.Install ipadic:% tar zxfv mecab-ipadic-2.7.0-XXXX.tar.gz
% cd mecab-ipadic-2.7.0-XXXX
% ./configure --with-charset=utf8
% make
% su
# make install
Package: c2utils
C2 Toolkit总结了一些可能会在项目中用到的工具（方法）安装pipinstall--upgradec2utils基本使用1. 公共方法fromc2utils.utilsimportcommonprint(common.is_chinese_string('科创信息'))print(common.is_number_in_string('科创信息666'))print(common.clear_all_spaces('科 创  信   息'))calculate_execution_time: 计算程序执行时间装饰器is_chinese: 判断一个字符是否是汉字is_chinese_string: 判断输入文本是否全为汉字is_digit: 判断输入对象是否是数字is_number_in_string: 判断文本中是否含有数字extract_numbers: 提取文本中的数字clear_all_spaces: 去除文本中的所有空格clear_all_punctuation: 去除文本中的标点符号is_alphabet: 判断一个字符是否是英文字母is_alphabet_string: 判断输入文本是否全是英文randomly_generate_string: 随机生成n位字符串extract_text_through_re: 通过正则表达式抽取文本ReadConfig: 读取配置文件类2. 文本处理fromc2utils.utilsimporttext_processingprint(text_processing.simple2tradition('科创'))print(text_processing.tradition2simple('科創'))print(text_processing.get_homophones_by_char('科'))print(text_processing.get_homophones_by_pinyin('ke1'))print(text_processing.pinyin_split('hunankechuangxinxijishugufenyouxiangongsi'))simple2tradition: 将简体转换成繁体tradition2simple: 将繁体转换成简体get_homophones_by_char: 根据汉字取同音字get_homophones_by_pinyin: 根据拼音取同音字chinese2pinyin: 中文文本转拼音pinyin_split: 拼音分割text_split: 文本分割（分句）3. 分词fromc2utils.utils.text_segmentationimportSegment,load_user_dictionarysegment=Segment()# 默认使用百度停用词load_user_dictionary()# 加载用户词典print(segment.cut('湖南科创信息技术股份有限公司'))print(segment.pseg_cut('湖南科创信息技术股份有限公司'))print(segment.cut_for_search('湖南科创信息技术股份有限公司'))segment.cut: jieba分词segment.pseg_cut: 词性标注segment.cut_for_search: 搜索引擎模式segment.extract_keywords_through_tfidf: 关键词抽取（TF-IDF）segment.extract_keywords_through_text_rank: 关键词抽取（TextRank）4. 时间处理fromc2utils.utilsimporttime_processingprint(time_processing.get_current_time())print(time_processing.get_current_date())date2timestamp_s: 日期时间转换成秒级时间戳date2timestamp: 日期时间转换成毫秒级时间戳timestamp2date: 时间戳转换为指定格式的日期get_current_time: 获取当前日期时间get_current_date: 获取当前日期get_yesterday_date: 获取昨天日期get_current_timestamp_s: 获取当前日期时间对应的时间戳（秒级）get_current_timestamp_ms: 获取当前日期时间对应的时间戳（毫秒级）5. 文件处理fromc2utils.utils.file_processingimportFileProcessingfile_processing=FileProcessing('file.txt')print(file_processing.get_file_size())print(file_processing.get_file_dir())print(file_processing.get_file_data_len())forlineinfile_processing.read_file_by_line():print(line)file_processing.read_file_by_line: 按行读取文件（txt/json/csv/excel）file_processing.data2txt: 写入数据到txt文件file_processing.check_file_exist: 检查文件是否存在file_processing.get_file_data_len: 获取文件总行数file_processing.get_file_dir: 获取文件所在目录file_processing.get_file_size: 获取文件大小check_file_contents: 比较两个文件内容是否一致print_file_directory_tree: 打印文件目录树unzip_file: zip文件解压save_pickle: 保存成pickle文件load_pickle: 读取pickle文件save_json: 保存成json文件load_json: 加载json文件6. 科学计算fromc2utils.utilsimportcalculationTODO科学计算模块预处理模块
Package: c2validator
c2validatorc2validator is used for validate CPF and CNPJ, and create CPF or CNPJ for tests.INSTALLING$ python -m pip install c2validatorCLONING THE REPOSITORYgit clone https://github.com/devguilhermecosta/c2validator.gitHOW USE THIS PACKAGEValidating CPF or CNPJ>>> import c2validator as c2
>>>
>>> cpf = c2.validate('725.849.240-21') 
>>> cpf.is_valid()
TrueThis is semple.
If CPF or CNPJ is invalid, the return we willFalse.If the value contains letters, symbols or punctuation, a private __clean() method will clean the data before validate.Returning a clean valueWhen the CPF or CNPJ is valid, you can use the formatted() method.
This method returns the value without symbols, letters or punctuation.
But, if you need a formatted data with punctuation, you can use
formatted(punctuation=True).>>> import c2validator as c2
>>> 
>>> cpf = c2.validate('725.849.240-21') 
>>> cpf.is_valid()
True
>>> cpf.formatted()
'72584924021'
>>> cpf.formatted(punctuation=True) 
'725.849.240-21'Now, if the CPF or CNPJ is invalid, the formatted() method returnsinvalid CPF or CNPJ.>>> import c2validator as c2
>>> 
>>> cpf = c2.validate('111.111.111-11')
>>> cpf.is_valid()
False
>>> cpf.formatted()
'invalid CPF or CNPJ'Generating CPF and CNPJYou can use this package for generate CPF and CNPJ to test your code.Generating and testing CNPJ>>> import c2validator as c2
>>> 
>>> cnpj = c2.create_cnpj()
>>> cnpj
'89979419564354'
>>> c2.validate(cnpj).is_valid()
TrueYou can return this CNPJwith punctuation.>>> import c2validator as c2
>>> 
>>> cnpj = c2.create_cnpj(punctuation=True)
>>> cnpj
'55.487.153/6933-80'
>>> c2.validate(cnpj).is_valid()
TrueGenerating and testing CPF>>> import c2validator as c2
>>> 
>>> cpf = c2.create_cpf()
>>> cpf
'05170816367'
>>> c2.validate(cpf).is_valid()
TrueYou can return this CPFwith punctuation.>>> import c2validator as c2
>>> 
>>> cpf = c2.create_cpf(punctuation=True)
>>> cpf
'415.684.161-80'
>>> c2.validate(cpf).is_valid()
True
Package: c2vb
c2vbA Python program convert simple C / C++ code to Visual Basic 6 codeWarning: only support very little C / C++ grammar特性将 C / C++ 转成 AST 再转成 VB实现基本语法简单类型推断（区分/和\）可打印带缩进 AST可生成 Graphviz dot 语言 AST使用方法$pipinstallc2vb
$c2vbsample.c
$c2vbsample.cppimportc2vbf=open('sample.c','r')src=f.read()lex=c2vb.Lexer(src)# 词法parser=c2vb.Parser(lex.tokens)# 语法c2vb.proc(parser.ast)# 类型推断parser.ast.vb()==c2vb.run(file='sample.c')==c2vb.run(src=src)# 返回 VB 代码parser.ast.dot()# 返回以 dot 语言表示的 ASTstr(parser.ast)# 返回字符串带缩进 AST注意不支持预处理命令(#include#define...)可以试试g++ -E file.cpp来处理#define++--是被看作赋值的，不能在表达式中出现。不支持structclass不支持数组初始化也就是说const数组不行不能连赋值a=b=c高级语法一个都没有实现注意删掉cin/cout因为没有实现运算符重载for(s1;s2;s3;)s1必须为赋值或定义，s2必须为数学表达式，s3必须为赋值所有for都将被翻译为Do While ... Loop不支持do ... while()语句只有 if/for/while/return/break/const/变量定义/函数调用也就是说 表达式 加;当语句是不行的类型只有int/float/double/bool/string贡献欢迎提 bug, issue, pull requestTODO:表达式中含有++--这件事比较麻烦因为这会把一个赋值变成两三个连赋值a=b=c特殊for翻译成For（遥遥无期）C / C++ 中常用函数写入语法之中方便运行数组初始化string特异化支持的语法statements   --> statement | statements statement
statement    --> if | while | for | const | declare | return | break
               | "{" statements "}"
               | call ";" | assigns ";"
program      --> program ( const | declare | func )
expr         --> 支持函数调用, 数组, `- ! ~ * / % + - < <= > >= == != & ^ | && ||`
               | 字符串常量
type         --> "int" | "float" | "double" | "string" | "void" | "bool"
identifier   --> ID | identifier"["expr"]"
call         --> identifier "(" ")"
               | identifier "(" expr ( "," expr )* ")"
assign_opt   --> "+=" | "-=" | "*=" | "/=" | "%=" 
               | "&=" | "^=" | "|=" | "="
assign       --> ( "++" | "--" ) identifier
               | identifier ( "++" | "--" )
               | identifier assign_opt expr
assigns      --> assign ( "," assign )*
arg          --> type identifier
func         --> type identifier "(" ")" statement
               | type identifier "(" arg ( "," arg )* ")" statement
const        --> "const" declare
if           --> "if" "(" expr ")" statement
               | "if" "(" expr ")" statement "else" statement
for          --> "for" "(" (declare | assigns ";" ) expr ";" assigns ")" statement
while        --> "while" "(" expr ")" statement
return       --> "return"
               | "return" expr ";"
break        --> "break" ";"
declare_item --> identifier
               | identifier "=" expr
declare      --> type declare_item ( "," declare_item )* ";"
Package: c2w
c2wThe c2w utility converts a CLI program to a Web service.Installation% pip install c2wGetting StartedWe convertkramdownto a web service to get an online Markdown renderer.% c2w --mime text/html kramdownc2wis serving on127.0.0.1:8000now.% curl http://localhost:8000 -X POST --data-binary @- << __EOF__
heredoc> # TITLE
heredoc>
heredoc> This is **strong**.
heredoc> __EOF__We could get the following.<h1 id="title">TITLE</h1>

<p>This is <strong>strong</strong>.</p>c2whandles bothGETandPOSTrequests and treats them as the same with the following rules.The query string will be split by&, decoded and sent tokramdownas arguments.The request body will be sent to thestdinofkramdownand thestdoutofkramdownwill be sent to the browser.kramdowncan translate Mardown to LaTex with the option-o latex.
If we want to get the LaTex output, we could put-o&latexin the query string.% curl 'http://localhost:8000?-o&latex' --data-binary @- << __EOF__
heredoc> # TITLE
heredoc>
heredoc> This is **strong**.
heredoc> __EOF__We got the following.\section{TITLE}\hypertarget{title}{}\label{title}

This is \textbf{strong}.Serving as a CGI program with an HTTP ServerThe HTTP server provided byc2wis not mature enough and not recommended to use in a production environment.
You may want to use Apache HTTPd or Nginx.
To achieve this you can runc2win CGI mode.Create a simple Shell script namednetmark.#!/bin/bash

c2w --cgi --mime text/html kramdownGive it the execution permission and put it in thecgi-bindirectory of your HTTP server.Detailed UsageRunc2w --help.Why I Wrote Itc2w: Convert Any CLI Program to a Web Service
Package: c2y
NAMEc2ySYNOPSISc2y <flags>DESCRIPTIONConvert coco datasets to yolo datasetsFLAGS-a, --ann_path=ANN_PATH
    Type: Optional[Optional]
    Default: None
-i, --imgs_dir=IMGS_DIR
    Type: Optional[Optional]
    Default: None
-y, --yolo_cfg_yaml=YOLO_CFG_YAML
    Type: Optional[Optional]
    Default: None
-o, --output_dir=OUTPUT_DIR
    Type: Optional[Optional]
    Default: None
-f, --force=FORCE
    Type: bool
    Default: False
Package: c3d
This is a small library for reading and writing C3D binary files. C3D files are
a standard format for recording 3-dimensional time sequence data, especially
data recorded by a 3D motion tracking apparatus.InstallingInstall with pip:pip install c3dOr if you’d like to use the bleeding-edge version, just clone the github
repository and build and install using the normal Python setup process:pip install git+https://github.com/EmbodiedCognition/py-c3dUsageToolsThis package includes a script for converting C3D motion data to CSV format
(c3d2csv) and an OpenGL-based visualization tool for observing the motion
described by a C3D file (c3d-viewer).Note for the viewer you need to installpyglet.
This can be done by installing the gui extra of py-c3d:pip install "c3d[gui]"LibraryTo use the C3D library, just import the package and create aReaderorWriterdepending on your intended usageimportc3dwithopen('data.c3d','rb')ashandle:reader=c3d.Reader(handle)fori,(points,analog)inenumerate(reader.read_frames()):print('Frame{}:{}'.format(i,points.round(2)))You can also get and set metadata fields using the library; see thepackage
documentationfor more details.Developer InstallTo work onc3d, first installpoetryand then run:git clone https://github.com/EmbodiedCognition/py-c3d
cd py-c3d
poetry installThis will create a new virtual environment with all the required dependency andc3din develop mode.TestsTo run tests available in the test folder, following command can be run from the root of the package directory:python -m unittest discover .Test scripts will automatically download test files fromc3d.org.CaveatsThis library is minimally effective, in the sense that the only motion tracking
system I have access to (for testing) is a Phasespace system. If you try out the
library and find that it doesn’t work with your motion tracking system, let me
know. Pull requests are also welcome!Also, if you’re looking for more functionality than just reading and writing C3D
files, there are a lot of better toolkits out there that support a lot more file
formats and provide more functionality, perhaps at the cost of increased
complexity. Thebiomechanical toolkitis a good package for analyzing motion
data.
Package: c3dp
c3dpmcstas:http://mcstas.org/MCViNE:https://mcvine.orgdesign of 3D printed high pressure cell collimatorgauge volume example:https://github.com/Fahima-Islam/c3dp/blob/gauge_volume/notebooks/gauge_volume.ipynbFeaturesSimulation of the the diffractometerSImulation of the pressure cellOptimization of  the collimator for the given pressure cellProduced the .stl or .scad file of the collimator to be 3D printedProduced the comparison in the diffraction pattern for with and without collimatorInstallationInstall mcvine$condacreate-nmcvinepython=2.7# create an environment for mcvine$sourceactivatemcvine# activate mcvine environment$condaconfig--addchannelsconda-forge# add conda channels$condaconfig--addchannelsdiffpy$condaconfig--addchannelsmantid$condaconfig--addchannelsmcvine$condainstallnumpy# install$condainstallmcvineInstall mcstastmcstasCreditsThis package was created withCookiecutterand theaudreyr/cookiecutter-pypackageproject template.History0.1.0 (2019-04-22)First release on PyPI.
Package: c3linear
C3 Linearization Algorithmc3linearis a naïve implementation ofC3 linearizationalgorithm. C3 used in Python 2.3+ forMethod Resolution Order.
See Raymond Hettinger'sPython’s super() considered super!for more information.MotivationThe project has come to life as a byproduct of debugging an
overcomplicated hierarchy of mixin classes.  I thought I knew how
exactly MRO is computed, but it turned out I didn't.I've tried to keep the code idiomatic and easy to follow at the
expense of performance. The project is really took a couple of hours
to complete.  Although I didn't care about time complexity and didn't
check correctness as thoroughly as I should, I think the project may
help someone who wants to learn how Python's Method Resolution Order
works.UsageLibraryGet the code and install it withpython setup.py install(Python
3.6+ required)Importfrom c3linear.mro import mroCheck against built-in MRO:>>>classA:pass>>>classB(A):pass>>>mro(B)==B.mro()TrueTake a look attestsfor more examples.TestingInstall dependencies:pipinstall-e.(Optional) Install extra packages:pipinstall-e.[extra]Run tests with:pythonsetup.pytestRunflake8for PEP8 compliance testing:pythonsetup.pyflake8Runmypy:mypyc3linear/ContributingIf you've found a bug, please open an issue describing the problem first.LicenceThe project is licensed under MIT License. For further information seeLINCENSEfile.