source file: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/s3transfer/futures.py
file stats: 257 lines, 86 executed: 33.5% covered
1. # Copyright 2016 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2. # 3. # Licensed under the Apache License, Version 2.0 (the "License"). You 4. # may not use this file except in compliance with the License. A copy of 5. # the License is located at 6. # 7. # http://aws.amazon.com/apache2.0/ 8. # 9. # or in the "license" file accompanying this file. This file is 10. # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF 11. # ANY KIND, either express or implied. See the License for the specific 12. # language governing permissions and limitations under the License. 13. from concurrent import futures 14. from collections import namedtuple 15. import copy 16. import logging 17. import sys 18. import threading 19. 20. from s3transfer.compat import MAXINT 21. from s3transfer.compat import six 22. from s3transfer.exceptions import CancelledError, TransferNotDoneError 23. from s3transfer.utils import FunctionContainer 24. from s3transfer.utils import TaskSemaphore 25. 26. 27. logger = logging.getLogger(__name__) 28. 29. 30. class TransferFuture(object): 31. def __init__(self, meta=None, coordinator=None): 32. """The future associated to a submitted transfer request 33. 34. :type meta: TransferMeta 35. :param meta: The metadata associated to the request. This object 36. is visible to the requester. 37. 38. :type coordinator: TransferCoordinator 39. :param coordinator: The coordinator associated to the request. This 40. object is not visible to the requester. 41. """ 42. self._meta = meta 43. if meta is None: 44. self._meta = TransferMeta() 45. 46. self._coordinator = coordinator 47. if coordinator is None: 48. self._coordinator = TransferCoordinator() 49. 50. @property 51. def meta(self): 52. """The metadata associated tio the TransferFuture""" 53. return self._meta 54. 55. def done(self): 56. """Determines if a TransferFuture has completed 57. 58. :returns: True if completed. False, otherwise. 59. """ 60. return self._coordinator.done() 61. 62. def result(self): 63. """Waits until TransferFuture is done and returns the result 64. 65. If the TransferFuture succeeded, it will return the result. If the 66. TransferFuture failed, it will raise the exception associated to the 67. failure. 68. """ 69. try: 70. # Usually the result() method blocks until the transfer is done, 71. # however if a KeyboardInterrupt is raised we want want to exit 72. # out of this and propogate the exception. 73. return self._coordinator.result() 74. except KeyboardInterrupt as e: 75. self.cancel() 76. raise e 77. 78. def cancel(self): 79. """Cancels the request associated with the TransferFuture""" 80. self._coordinator.cancel() 81. 82. def set_exception(self, exception): 83. """Sets the exception on the future.""" 84. if not self.done(): 85. raise TransferNotDoneError( 86. 'set_exception can only be called once the transfer is ' 87. 'complete.') 88. self._coordinator.set_exception(exception, override=True) 89. 90. 91. class TransferMeta(object): 92. """Holds metadata about the TransferFuture""" 93. def __init__(self, call_args=None, transfer_id=None): 94. self._call_args = call_args 95. self._transfer_id = transfer_id 96. self._size = None 97. self._user_context = {} 98. 99. @property 100. def call_args(self): 101. """The call args used in the transfer request""" 102. return self._call_args 103. 104. @property 105. def transfer_id(self): 106. """The unique id of the transfer""" 107. return self._transfer_id 108. 109. @property 110. def size(self): 111. """The size of the transfer request if known""" 112. return self._size 113. 114. @property 115. def user_context(self): 116. """A dictionary that requesters can store data in""" 117. return self._user_context 118. 119. def provide_transfer_size(self, size): 120. """A method to provide the size of a transfer request 121. 122. By providing this value, the TransferManager will not try to 123. call HeadObject or use the use OS to determine the size of the 124. transfer. 125. """ 126. self._size = size 127. 128. 129. class TransferCoordinator(object): 130. """A helper class for managing TransferFuture""" 131. def __init__(self, transfer_id=None): 132. self.transfer_id = transfer_id 133. self._status = 'not-started' 134. self._result = None 135. self._exception = None 136. self._associated_futures = set() 137. self._failure_cleanups = [] 138. self._done_callbacks = [] 139. self._done_event = threading.Event() 140. self._lock = threading.Lock() 141. self._associated_futures_lock = threading.Lock() 142. self._done_callbacks_lock = threading.Lock() 143. self._failure_cleanups_lock = threading.Lock() 144. 145. def __repr__(self): 146. return '%s(transfer_id=%s)' % ( 147. self.__class__.__name__, self.transfer_id) 148. 149. @property 150. def exception(self): 151. return self._exception 152. 153. @property 154. def associated_futures(self): 155. """The list of futures associated to the inprogress TransferFuture 156. 157. Once the transfer finishes this list becomes empty as the transfer 158. is considered done and there should be no running futures left. 159. """ 160. with self._associated_futures_lock: 161. # We return a copy of the list because we do not want to 162. # processing the returned list while another thread is adding 163. # more futures to the actual list. 164. return copy.copy(self._associated_futures) 165. 166. @property 167. def failure_cleanups(self): 168. """The list of callbacks to call when the TransferFuture fails""" 169. return self._failure_cleanups 170. 171. @property 172. def status(self): 173. """The status of the TransferFuture 174. 175. The currently supported states are: 176. * not-started - Has yet to start. If in this state, a transfer 177. can be canceled immediately and nothing will happen. 178. * queued - SubmissionTask is about to submit tasks 179. * running - Is inprogress. In-progress as of now means that 180. the SubmissionTask that runs the transfer is being executed. So 181. there is no guarantee any transfer requests had been made to 182. S3 if this state is reached. 183. * cancelled - Was cancelled 184. * failed - An exception other than CancelledError was thrown 185. * success - No exceptions were thrown and is done. 186. """ 187. return self._status 188. 189. def set_result(self, result): 190. """Set a result for the TransferFuture 191. 192. Implies that the TransferFuture succeeded. This will always set a 193. result because it is invoked on the final task where there is only 194. ever one final task and it is ran at the very end of a transfer 195. process. So if a result is being set for this final task, the transfer 196. succeeded even if something came a long and canceled the transfer 197. on the final task. 198. """ 199. with self._lock: 200. self._exception = None 201. self._result = result 202. self._status = 'success' 203. 204. def set_exception(self, exception, override=False): 205. """Set an exception for the TransferFuture 206. 207. Implies the TransferFuture failed. 208. 209. :param exception: The exception that cause the transfer to fail. 210. :param override: If True, override any existing state. 211. """ 212. with self._lock: 213. if not self.done() or override: 214. self._exception = exception 215. self._status = 'failed' 216. 217. def result(self): 218. """Waits until TransferFuture is done and returns the result 219. 220. If the TransferFuture succeeded, it will return the result. If the 221. TransferFuture failed, it will raise the exception associated to the 222. failure. 223. """ 224. # Doing a wait() with no timeout cannot be interrupted in python2 but 225. # can be interrupted in python3 so we just wait with the largest 226. # possible value integer value, which is on the scale of billions of 227. # years... 228. self._done_event.wait(MAXINT) 229. 230. # Once done waiting, raise an exception if present or return the 231. # final result. 232. if self._exception: 233. raise self._exception 234. return self._result 235. 236. def cancel(self, msg='', exc_type=CancelledError): 237. """Cancels the TransferFuture 238. 239. :param msg: The message to attach to the cancellation 240. :param exc_type: The type of exception to set for the cancellation 241. """ 242. with self._lock: 243. if not self.done(): 244. should_announce_done = False 245. logger.debug('%s cancel(%s) called', self, msg) 246. self._exception = exc_type(msg) 247. if self._status == 'not-started': 248. should_announce_done = True 249. self._status = 'cancelled' 250. if should_announce_done: 251. self.announce_done() 252. 253. def set_status_to_queued(self): 254. """Sets the TransferFutrue's status to running""" 255. self._transition_to_non_done_state('queued') 256. 257. def set_status_to_running(self): 258. """Sets the TransferFuture's status to running""" 259. self._transition_to_non_done_state('running') 260. 261. def _transition_to_non_done_state(self, desired_state): 262. with self._lock: 263. if self.done(): 264. raise RuntimeError( 265. 'Unable to transition from done state %s to non-done ' 266. 'state %s.' % (self.status, desired_state)) 267. self._status = desired_state 268. 269. def submit(self, executor, task, tag=None): 270. """Submits a task to a provided executor 271. 272. :type executor: s3transfer.futures.BoundedExecutor 273. :param executor: The executor to submit the callable to 274. 275. :type task: s3transfer.tasks.Task 276. :param task: The task to submit to the executor 277. 278. :type tag: s3transfer.futures.TaskTag 279. :param tag: A tag to associate to the submitted task 280. 281. :rtype: concurrent.futures.Future 282. :returns: A future representing the submitted task 283. """ 284. logger.debug( 285. "Submitting task %s to executor %s for transfer request: %s." % ( 286. task, executor, self.transfer_id) 287. ) 288. future = executor.submit(task, tag=tag) 289. # Add this created future to the list of associated future just 290. # in case it is needed during cleanups. 291. self.add_associated_future(future) 292. future.add_done_callback( 293. FunctionContainer(self.remove_associated_future, future)) 294. return future 295. 296. def done(self): 297. """Determines if a TransferFuture has completed 298. 299. :returns: False if status is equal to 'failed', 'cancelled', or 300. 'success'. True, otherwise 301. """ 302. return self.status in ['failed', 'cancelled', 'success'] 303. 304. def add_associated_future(self, future): 305. """Adds a future to be associated with the TransferFuture""" 306. with self._associated_futures_lock: 307. self._associated_futures.add(future) 308. 309. def remove_associated_future(self, future): 310. """Removes a future's association to the TransferFuture""" 311. with self._associated_futures_lock: 312. self._associated_futures.remove(future) 313. 314. def add_done_callback(self, function, *args, **kwargs): 315. """Add a done callback to be invoked when transfer is done""" 316. with self._done_callbacks_lock: 317. self._done_callbacks.append( 318. FunctionContainer(function, *args, **kwargs) 319. ) 320. 321. def add_failure_cleanup(self, function, *args, **kwargs): 322. """Adds a callback to call upon failure""" 323. with self._failure_cleanups_lock: 324. self._failure_cleanups.append( 325. FunctionContainer(function, *args, **kwargs)) 326. 327. def announce_done(self): 328. """Announce that future is done running and run associated callbacks 329. 330. This will run any failure cleanups if the transfer failed if not 331. they have not been run, allows the result() to be unblocked, and will 332. run any done callbacks associated to the TransferFuture if they have 333. not already been ran. 334. """ 335. if self.status != 'success': 336. self._run_failure_cleanups() 337. self._done_event.set() 338. self._run_done_callbacks() 339. 340. def _run_done_callbacks(self): 341. # Run the callbacks and remove the callbacks from the internal 342. # list so they do not get ran again if done is announced more than 343. # once. 344. with self._done_callbacks_lock: 345. self._run_callbacks(self._done_callbacks) 346. self._done_callbacks = [] 347. 348. def _run_failure_cleanups(self): 349. # Run the cleanup callbacks and remove the callbacks from the internal 350. # list so they do not get ran again if done is announced more than 351. # once. 352. with self._failure_cleanups_lock: 353. self._run_callbacks(self.failure_cleanups) 354. self._failure_cleanups = [] 355. 356. def _run_callbacks(self, callbacks): 357. for callback in callbacks: 358. self._run_callback(callback) 359. 360. def _run_callback(self, callback): 361. try: 362. callback() 363. # We do not want a callback interrupting the process, especially 364. # in the failure cleanups. So log and catch, the excpetion. 365. except Exception: 366. logger.debug("Exception raised in %s." % callback, exc_info=True) 367. 368. 369. class BoundedExecutor(object): 370. EXECUTOR_CLS = futures.ThreadPoolExecutor 371. 372. def __init__(self, max_size, max_num_threads, tag_semaphores=None, 373. executor_cls=None): 374. """An executor implentation that has a maximum queued up tasks 375. 376. The executor will block if the number of tasks that have been 377. submitted and is currently working on is past its maximum. 378. 379. :params max_size: The maximum number of inflight futures. An inflight 380. future means that the task is either queued up or is currently 381. being executed. A size of None or 0 means that the executor will 382. have no bound in terms of the number of inflight futures. 383. 384. :params max_num_threads: The maximum number of threads the executor 385. uses. 386. 387. :type tag_semaphores: dict 388. :params tag_semaphores: A dictionary where the key is the name of the 389. tag and the value is the semaphore to use when limiting the 390. number of tasks the executor is processing at a time. 391. 392. :type executor_cls: BaseExecutor 393. :param underlying_executor_cls: The executor class that 394. get bounded by this executor. If None is provided, the 395. concurrent.futures.ThreadPoolExecutor class is used. 396. """ 397. self._max_num_threads = max_num_threads 398. if executor_cls is None: 399. executor_cls = self.EXECUTOR_CLS 400. self._executor = executor_cls(max_workers=self._max_num_threads) 401. self._semaphore = TaskSemaphore(max_size) 402. self._tag_semaphores = tag_semaphores 403. 404. def submit(self, task, tag=None, block=True): 405. """Submit a task to complete 406. 407. :type task: s3transfer.tasks.Task 408. :param task: The task to run __call__ on 409. 410. 411. :type tag: s3transfer.futures.TaskTag 412. :param tag: An optional tag to associate to the task. This 413. is used to override which semaphore to use. 414. 415. :type block: boolean 416. :param block: True if to wait till it is possible to submit a task. 417. False, if not to wait and raise an error if not able to submit 418. a task. 419. 420. :returns: The future assocaited to the submitted task 421. """ 422. semaphore = self._semaphore 423. # If a tag was provided, use the semaphore associated to that 424. # tag. 425. if tag: 426. semaphore = self._tag_semaphores[tag] 427. 428. # Call acquire on the semaphore. 429. acquire_token = semaphore.acquire(task.transfer_id, block) 430. # Create a callback to invoke when task is done in order to call 431. # release on the semaphore. 432. release_callback = FunctionContainer( 433. semaphore.release, task.transfer_id, acquire_token) 434. # Submit the task to the underlying executor. 435. future = ExecutorFuture(self._executor.submit(task)) 436. # Add the Semaphore.release() callback to the future such that 437. # it is invoked once the future completes. 438. future.add_done_callback(release_callback) 439. return future 440. 441. def shutdown(self, wait=True): 442. self._executor.shutdown(wait) 443. 444. 445. class ExecutorFuture(object): 446. def __init__(self, future): 447. """A future returned from the executor 448. 449. Currently, it is just a wrapper around a concurrent.futures.Future. 450. However, this can eventually grow to implement the needed functionality 451. of concurrent.futures.Future if we move off of the library and not 452. affect the rest of the codebase. 453. 454. :type future: concurrent.futures.Future 455. :param future: The underlying future 456. """ 457. self._future = future 458. 459. def result(self): 460. return self._future.result() 461. 462. def add_done_callback(self, fn): 463. """Adds a callback to be completed once future is done 464. 465. :parm fn: A callable that takes no arguments. Note that is different 466. than concurrent.futures.Future.add_done_callback that requires 467. a single argument for the future. 468. """ 469. # The done callback for concurrent.futures.Future will always pass a 470. # the future in as the only argument. So we need to create the 471. # proper signature wrapper that will invoke the callback provided. 472. def done_callback(future_passed_to_callback): 473. return fn() 474. self._future.add_done_callback(done_callback) 475. 476. def done(self): 477. return self._future.done() 478. 479. 480. class BaseExecutor(object): 481. """Base Executor class implementation needed to work with s3transfer""" 482. def __init__(self, max_workers=None): 483. pass 484. 485. def submit(self, fn, *args, **kwargs): 486. raise NotImplementedError('submit()') 487. 488. def shutdown(self, wait=True): 489. raise NotImplementedError('shutdown()') 490. 491. 492. class NonThreadedExecutor(BaseExecutor): 493. """A drop-in replacement non-threaded version of ThreadPoolExecutor""" 494. def submit(self, fn, *args, **kwargs): 495. future = NonThreadedExecutorFuture() 496. try: 497. result = fn(*args, **kwargs) 498. future.set_result(result) 499. except Exception: 500. e, tb = sys.exc_info()[1:] 501. logger.debug( 502. 'Setting exception for %s to %s with traceback %s', 503. future, e, tb 504. ) 505. future.set_exception_info(e, tb) 506. return future 507. 508. def shutdown(self, wait=True): 509. pass 510. 511. 512. class NonThreadedExecutorFuture(object): 513. """The Future returned from NonThreadedExecutor 514. 515. Note that this future is **not** thread-safe as it is being used 516. from the context of a non-threaded environment. 517. """ 518. def __init__(self): 519. self._result = None 520. self._exception = None 521. self._traceback = None 522. self._done = False 523. self._done_callbacks = [] 524. 525. def set_result(self, result): 526. self._result = result 527. self._set_done() 528. 529. def set_exception_info(self, exception, traceback): 530. self._exception = exception 531. self._traceback = traceback 532. self._set_done() 533. 534. def result(self, timeout=None): 535. if self._exception: 536. six.reraise( 537. type(self._exception), self._exception, self._traceback) 538. return self._result 539. 540. def _set_done(self): 541. self._done = True 542. for done_callback in self._done_callbacks: 543. self._invoke_done_callback(done_callback) 544. self._done_callbacks = [] 545. 546. def _invoke_done_callback(self, done_callback): 547. return done_callback(self) 548. 549. def done(self): 550. return self._done 551. 552. def add_done_callback(self, fn): 553. if self._done: 554. self._invoke_done_callback(fn) 555. else: 556. self._done_callbacks.append(fn) 557. 558. 559. TaskTag = namedtuple('TaskTag', ['name']) 560. 561. IN_MEMORY_UPLOAD_TAG = TaskTag('in_memory_upload') 562. IN_MEMORY_DOWNLOAD_TAG = TaskTag('in_memory_download')


Hangul to Yale Romanization Converter
×
New:
Partial support for Unicode Jamo-based Middle Korean text. Try: 나랏말ᄊᆞ미
Hangul
Convert
Yale Romanization
Options (not working yet)
Dots for syllable boundaries
Never
When ambiguous in modern Korean
Always
u (ㅡ) / wu (ㅜ) distinction after labials
Keep it
Always use
u
Araea (ㆍ)
Use
@
Use
o
(Use
wo
for ㅗ instead)


{% extends "base.html" %} {% block content %}
{{ competition.title }} {{ competition.description }}
{{ competition.content|safe }}


Illinois Prosecutor Harshly Criticized for Dropping Jussie Smollett Charges Announces Re-Election Bid
by Associated Press(CHICAGO) — The top prosecutor in Cook County, Illinois, who was harshly criticized when her office suddenly dropped charges against actor Jussie Smollett, says she’s running for re-election.
Cook County State’s Attorney Kim Foxx says in a Tuesday news release that she hopes to continue reforming the criminal justice system in the county including Chicago that she began implementing when she was elected in 2016.
The bid by Foxx, the first black woman to head the office, comes after a judge appointed a special prosecutor to examine why felony counts against the actor who had been charged with staging a racist and homophobic attack against himself last January were dropped. Foxx had recused herself after she had conversations with the actor’s family.
Foxx’s challengers include a former judge and two former prosecutors.


Press n or j to go to the next uncovered block, b, p or k for the previous block.
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| algorithm.ts |
|
3.45% | 2/58 | 0% | 0/44 | 0% | 0/10 | 3.64% | 2/55 |
| empty-content.tsx |
|
66.67% | 6/9 | 0% | 0/8 | 0% | 0/1 | 71.43% | 5/7 |
| index.tsx |
|
6.53% | 32/490 | 0% | 0/326 | 0% | 0/38 | 5.45% | 22/404 |
| indicator.tsx |
|
36.36% | 4/11 | 0% | 0/2 | 0% | 0/3 | 37.5% | 3/8 |
| sort-icon.tsx |
|
55.56% | 5/9 | 0% | 0/2 | 0% | 0/1 | 66.67% | 4/6 |


This project aims to provide a simple way to visualize the lattice vibrations of different materials. The temperature of a material is related to the agitation of its atoms. The atoms can move in any of the three cartesian directions. Combining the different possible ways the atoms can vibrate we obtain the eigenvectors. Each mode has associated a frequency of vibration that is related with the forces between the atoms.
In the phonon section you can click on any point in the phonon dispersion and see an animation of how the atoms vibrate according to that particular mode. By default you can visualize the phonon dispersion of a few selected materials we calculated plus the ones calculated by A. Togo for phonodb. If you want to see your own calculations, we currently support phonon calculations from Abinit
, Quantum Espresso
and phononpy
.
You can visualize your own phonopy
files by clicking on the Choose files
button and selecting a band.yaml
file. The following options should be present in the band.conf
file:
EIGENVECTORS = .TRUE.
BAND_CONNECTION = .TRUE.
BAND_LABELS = Gamma M K
BAND = (x1,y1,z1) (x2,y2,z2) (x3,y3,z3)
This only works with the newer versions of phonopy as new tags were added to ‘band.yaml’ to have information about the atomic positions and the supercell.
To read a phonon dispersion from Abinit
you need python scripts to convert the phonon dispersion data to the internal .json
format used by the website.
The recommended way to do so is to use abipy. Once you have generated a DDB
file, you can create a JSON file with:
$ abiopen.py mp-149_DDB
In [1]: phbst, phdos = abifile.anaget_phbst_and_phdos_files()
In [2]: phbst.phbands.view_phononwebsite()
If you already have a PHBST.nc netcdf file produced by anaddb you can visualize it with:
$ abiview.py phbands example_PHBST.nc -web
Alternatively you can use the scripts provided in the Github page. To install them just do:
$ python setup.py install --user
In the folder where you ran anaddb
you will find a netCDF file (if you compiled Abinit
with netCDF support) with the name anaddb.out_PHBST.nc
. To convert it to .json
format just run:
$ read_anaddb_phonon.py anaddb.out_PHBST.nc <name_of_your_material>
You can then select the resulting .json
file with the Choose files
button on the phononwebsite
.
To read a Quantum Espresso calculation you need two files <prefix>.scf
and <prefix>.modes
. The first one is the input file for pw.x
the second one can be generated with dynmat.x
. The file that should be used is the one set with the 'filout'
tag in the dynmat input file as in it the modes are normalized with the atomic masses. After installing the python scripts (same as in the case of an Abinit
calculation) you can obtain the .json
files:
$ read_qe_phonon.py prefix <name_of_your_material>
You can then select the resulting .json
file with the Choose files
button.
To read a VASP calculation you need the vaspout.h5
file containing a phonon dispersion calculation. You can find the instructions of how to compute the phonon dispersion from a supercell calculation in the VASP wiki
$ read_vasp_phonon.py vaspout.h5 <name_of_your_material>
You can then select the resulting .json
file with the Choose files
button.
This visualization tool is currently being used in other websites:
You can export a animated .gif
with a particular mode using the gif
button in the Export movie section.
If you want to share your own data with someone else you can add to the url tags with the following format:
http://henriquemiranda.github.io/phononwebsite/phonon.html?tag1=a&tag2=b
The available tags are:
json = link to a json file
yaml = link to a yaml file
name = name of the material
Here are some examples of what can be added to the website link:
You are free to use all the images generated with this website in your publications and presentations as long as you cite this work (a link to the website is enough). For the license terms of the data from phonodb please refer to their website.
In polar materials the LO-TO splitting is missing in the phonodb.
Change the colors
The default colors of the atoms are the same ones used in jmol. Currently we don’t provide a web interface to change them. If you still would like to change the colors, you can checkout locally the git repository from Github. The colors of the atoms can be changed in atomic_data.js
file inside the js/
folder. The colors of the bonds and arrows can be changed in vibcrystal.js
in the variables this.arrowcolor
and this.bondscolor
respectively.
Compile and run locally
To bundle the code i.e. join all the javascript files in the src folder into a single javascript module run rollup -c
. You can run a http server locally (Mac or Linux) with python -m http.server
(python 3) and visit the page on your web browser in the address: http://localhost:8000.
Here you can find a short description of the internal .json format used to show the phonon dispersions and animations on the website.
name: name of the material that will be displayed on the website (string)
natoms: number of atoms (integer)
lattice: lattice vectors (3x3 float array)
atom_types: atom type for each atom in the system (array strings)
atom_numbers: atom number for each atom in the system (array integers)
formula: chemical formula (string)
repetitions: default value for the repetititions (array 3 integers)
atom_pos_car: atomic positions in cartesian coordinates (Nx3 float array)
atom_pos_red: atomic positions in reduced coordinates (Nx3 float array)
highsym_qpts: list of high symmetry qpoints (Nx3 float arraay)
qpoints: list of q-point in the reciprocal space (Nx3 float array)
distances: list distances between the qpoints (Nq float array)
eigenvalues: eigenvalues in units of cm-1 (Nqx(N\*3))
vectors: eigenvectors (NqxN)
line_breaks: list of tuples with start and end of each segment (Optional)
This project is the continuation of the work of Raoul Weber during an internship in the University of Luxembourg for 2 months in the Theoretical Solid State Physics group under the supervision of Ludger Wirtz and technical help from me.
I decided to continue the project by optimizing the implementation, cleaning up the design and replacing JSmol by a self made applet using Three.js and WebGL called VibCrystal. Currently the website works also as a web application which means the user can visualize his own calculations made with phonopy
.
My personal webpage:
http://henriquemiranda.github.io
Contact me:
miranda.henrique at gmail.com
Ludger Wirtz for the original idea and important scientific advices. Atsushi Togo the creator of phonopy for providing phonon dispersion data from his phonodb phonon database. José Pedro Silva for very helpful advices on technical issues and the best web technologies to use. Guido Petreto and Matteo Giantomassi for many insightful comments, debugging, feature suggestions and the interface with abipy. and from the for the implementation of the Vesta mode. José María Castelo for adding the possibility to change the covalent radii of the atomic species which is used to draw the bonds between the atoms.
VASP Software GmbH (2019-present): http://www.vasp.at
Fonds National de la Recherche Scientifique (2017-2019): http://www.fnrs.be/
Université Catholique de Louvain (2017-2019): https://uclouvain.be
Fonds National de la Recherche Luxembourg (2013-2017): http://www.fnr.lu/
University of Luxembourg (2013-2017): http://wwwen.uni.lu/
The project is under development!
You can leave your suggestions and feature requests here:
https://github.com/henriquemiranda/phononwebsite/issues
If you would like to see some of your calculations published on this website please contact me.
Three.js
: http://threejs.org/highcharts
: http://www.highcharts.com/CCapture.js
: https://github.com/spite/ccapture.jsgif.js
: http://jnordberg.github.io/gif.js/Abinit
: http://www.abinit.org/Abipy
: https://github.com/abinit/abipyQuantum Espresso
: http://www.quantum-espresso.org/phonopy
: http://atztogo.github.io/phonopy/VASP
: http://www.vasp.at


cyclum package¶
Submodules¶
cyclum.evaluation module¶
-
cyclum.evaluation.
parzen_estimate
(x, lim, half_granularity=100, window=<function <lambda>>, scale=0.5)[source]¶ Calculate parzen window estimation (a non-parametric density estimation method)
- Parameters
x – instances
lim – limit of domain
half_granularity –
window –
scale –
- Returns
cyclum.hdfrw module¶
Read write HDF.
-
cyclum.hdfrw.
hdf2mat
(filepath, dtype=<class 'float'>)[source]¶ Read hdf generated by hdfrw.R mat2hdf function to a data frame. Note that due to how python and R handles data differently, colnames are for index and rownames are for columns, and the matrix is also tacitly transposed.
- Parameters
filepath (
str
) – path of hdf filedtype (
Type
) – type of data; default is float
- Return type
DataFrame
- Returns
a pandas data frame
-
cyclum.hdfrw.
mat2hdf
(data, filepath)[source]¶ Write dataframe to an hdf file which can be read by hdfrw.R hdf2mat function.
- Parameters
data (
Union
[DataFrame
, <built-in function array>,List
[str
]]) – data frame or numpy array to be writtenfilepath (
str
) – path of hdf file to be written
- Return type
None
- Returns
None
cyclum.illustration module¶
-
class
cyclum.illustration.
FigureWriter
(pdf_name)[source]¶ Bases:
object
keep and write figures into a pdf file.
-
cyclum.illustration.
plot_cell_sparsity
(linear_data, use_ratio=True)[source]¶ Return a figure of #{cell, none_zero_genes(cell) > x} :param linear_data: data :param use_ratio: plot as ratio or :return:
-
cyclum.illustration.
plot_gene_sparsity
(linear_data, use_ratio=True)[source]¶ Return a figure of #{cell, none_zero_genes(cell) > x} :param linear_data: data :param use_ratio: plot as ratio or :return:
cyclum.tuning module¶
Auto tuning.
-
class
cyclum.tuning.
CyclumAutoTune
(data, max_linear_dims=3, epochs=500, verbose=100, rate=0.0005, early_stop=False, encoder_depth=2, encoder_width=50, dropout_rate=0.1, nonlinear_reg=0.0001, linear_reg=0.0001)[source]¶ Bases:
cyclum.models.ae.AutoEncoder
Circular autoencoder with automatically decided number of linear components
We first perform PCA on the data, and record the MSE of having first 1, 2, …, max_linear_dims + 1 components. We then try to train a circular autoencoder with 0, 1, …, max_linear_dims linear components. We compare circular autoencoder with i linear components with PCA with (i + 1) components, for i = 0, 1, … We record the first i where the difference of loss compared with PCA is greater than both (i - 1) and (i + 1), or just (i + 1) if i == 0.
At the end, this class will be a UNTRAINED model, which has optimal numbers of linear components. You can train it will all your data, more epochs, and better learning rate.
- Parameters
data – The data used to decide number of linear components. For a large dataset, you may use a representative portion of it.
max_linear_dims – maximum number of linear dimensions.
epochs – number of epochs for each test
verbose – per how many epochs does it report the loss, time consumption, etc.
rate – training rate
early_stop – Stop checking more linear components when result decided? ONLY affects the elbow plot. NO influence on result.
encoder_depth – depth of encoder, i.e., number of hidden layers
encoder_width –
width of encoder, one of the following:
An integer stands for number of nodes per layer. All hidden layers will have the same number of nodes.
A list, whose length is equal to encoder_depth, of integers stand for numbers of nodes of the layers.
dropout_rate – rate for dropout.
nonlinear_reg – strength of regularization on the nonlinear encoder.
linear_reg – strength of regularization on the linear encoder.
- Examples:
>>> from cyclum.hdfrw import hdf2mat, mat2hdf >>> df = hdf2mat('path_to_hdf.h5') >>> m = CyclumAutoTune(df.values, max_linear_dims=5) >>> m.train(df.values) >>> pseudotime = m.predict_pseudotime(df.values) >>> mat2hdf(pseudotime, 'path_to_pseudotime.h5')
cyclum.writer module¶
Writer gives a very fast way of saving and loading float value matrices. It saves matrices in binary and in very rigid format. This avoids overheads in csv reading functions. The R counterpart is also available.
-
cyclum.writer.
int32_to_bytes
(x)[source]¶ Convert an 32 bit int number to little endian 4 byte binary format. This helps writing a integer to a binary file.
- Parameters
x (int32) – number to be converted
- Returns
4 byte binary
-
cyclum.writer.
read_df_from_binary
(file_name_mask)[source]¶ Read a data frame from a binary file defined by this module
- Parameters
file_name_mask –
- Returns
the data frame
-
cyclum.writer.
read_matrix_from_binary
(file_name)[source]¶ Read a matrix from a binary file defined by this module.
- Parameters
file_name (str) – the file to read
- Returns
the matrix
-
cyclum.writer.
write_df_to_binary
(file_name_mask, df)[source]¶ Write a data frame to a file. Compared with matrix, it has column and row names Besides the row names and column names, the data frame must contain only float values.
Two files will be saved. For exmaple, a call write_df_to_binary(“example”, df) will output an “example-value.bin” and “example-name.txt”. They store the matrix and the column and row names separately.
- Parameters
file_name_mask (str) – the stem of the file name
df – the data frame to write
- Returns
None
Module contents¶
Top-level package for cyclum.


{% extends "reports/reports_base.html" %}
{% load humanize %}
{% block extra_link_types %}
{% endblock %}
{% block subcontent %}
| Awardee: | {{ awardee.name }} |
| Ingested: | {{ batch.created }} |
| Number of Issues: | {{ issues|length }} |
| Number of Pages: | {{ batch.page_count|intcomma }} |
| Bag Location: | {{ batch.name }} |
| Validated Batch File: | data/{{ batch.validated_batch_file }} |
| LCCNs In Batch: | {% for lccn in batch.lccns %} {{ lccn }} {% endfor %} |
| Reel Number | Titles in Reel | Date Range | Number of Pages |
|---|---|---|---|
| {{ reel.number }} | {% for title in reel.titles %} {{ title.display_name }} ({{title.lccn}}) {% endfor %} | {{ reel.title_range }} | {{ reel.page_count }} |
| Title | Issue Date | Number of Pages |
|---|---|---|
| {{ issue.title }} | {{issue.date_issued }} | {{ issue.page_count }} |


Canada: Retail Sales declined 0.1% in September as expected
by Eren Sengezer- CAD capitalizes on Canadian Retail Sales data on Friday.
- USD/CAD pair trades at fresh three-day lows near 1.3250.
Retail Sales in Canada decreased for the first time since June, losing 0.1% to $51.6 billion, the monthly data published by Statistics Canada showed on Friday.
"The decline came from lower sales at motor vehicle and parts dealers and gasoline stations. Excluding these two subsectors, retail sales rose 0.7%," the publication read. "After removing the effects of price changes, retail sales in volume terms decreased 0.1%."
With the initial market reaction, the CAD gathered strength against its peers and dragged the USD/CAD pair to 1.3250 area.


Hi.
I'd like to load a custom program to the RFM2Piv1 (ATTiny). (This is because I'd like to use a lower bitrate.)
I'm trying to follow the steps here, here, and there to configure the arduino IDE to work on ATTiny.
So I downloaded tiny-core on this page.
I'm using Debian's packaged arduino software, which is in /usr/share/arduino. I created a symlink from /usr/share/arduino/hardware/tiny to /usr/local/share/arduino/hardware/tiny where I decompressed the archive.
The archive does not contain boards.txt but a file called "Prospective boards.txt" (Yes, a space in a filename). I copied it into boards.txt and now I see a lot of boards available, but I don't see
ATtiny84 @ 8Mhz (internal oscillator; BOD disabled)
The closest I find are
ATtiny84 @ 1Mhz (internal oscillator; BOD disabled)
ATtiny85 @ 8Mhz (internal oscillator; BOD disabled)
Night Light (ATtiny84 @ 8 MHz; internal oscillator; 4.3 V BOD; CKOUT enabled)
Can I pick one of these ?
BTW, another difference with Martin's post, I don't have
hardware\tiny\bootloaders\attiny84\empty.hex
but
bootloaders/empty/
-rw-r--r-- 1 root root 234 juin 30 19:51 empty13Aat128.hex
-rw-r--r-- 1 root root 132 juin 30 19:51 empty13Aat1.hex
-rw-r--r-- 1 root root 770 juin 30 19:51 empty84at16.hex
-rw-r--r-- 1 root root 950 juin 30 19:51 empty84at1.hex
-rw-r--r-- 1 root root 950 juin 30 19:51 empty84at8.hex
Anyone been doing this lately ?
Re: RFM2Pi v1: load custom program
here is my all pre-configured and Attiny84 friendly IDE (Windows)
https://dl.dropboxusercontent.com/u/18771283/arduino-1.0.1.zip
You can still make use of it, even if you run on Linux, just requires some more thought :)
Re: RFM2Pi v1: load custom program
Thank you Martin for the link.
I downloaded you archive and used hardware/tiny/ from it to replace the one I got from arduino-tiny.
Now, I can select the right board type.
I had a compilation issue:
I searched a bit on the web and found an explanation.
I modified /usr/local/share/arduino/hardware/tiny/cores/tiny/wiring.h (extracted from your archive) to comment the "round" line and now I can compile successfully.
I can't test right now. I hope to borrow an ISP AVR tomorrow.
I'd like to test different bit rates.
Ideally, I'd add a new config parameter to allow for changing without reprogramming. Would you be interested in such a feature ?
 I'm not promising.
RFM2Pi is no longer produced, and people with a current version would still have to reflash, but I suppose the code could be used on v2 as well. Less necessary but still practical.
Do you see this as a modif to your sketch, or would you even patch jeelib ? After a quick look, I think both are feasible, but I don't know if the jeelib project would be interested.
BTW, I copied the tiny directory of your config files on github, along with the fix I had to apply to run on a recent debian.
Re: RFM2Pi v1: load custom program
Actually, I couldn't get an ISP AVR programmer.
I could buy one, but I might as well buy an RFM2Pi...
Regarding the setup, I wrote this:
In case anyone reads this, it is useless. Just create a hardware folder inside your arduino sketchbook.
Besides, the arduino-tiny-0150-0020.zip file works, or almost. I decompressed it in my newly created hardware directory and it works as expected, except I had to cut everything in tiny/avr/ and paste it up into tiny/.
I mean I need
~/projects/arduino/hardware/tiny/cores
not
~/projects/arduino/hardware/tiny/avr/cores


Your qualification was uploaded!
Error processing upload, please check that your email addresses are correct. If the problem persists, the server may be experiencing technical difficulties.
Error uploading qualification, please try again. All fields are required, except "Additional Information" field.


Mette Agger Eriksen, Maria Hellström Reimer, Eva Brandt, Kirsikka Vaajakallio
Introductory material for a Design Games workshop. They reference Ehn again. Examples of Games "Greengame" triangular printed materials, a time glass, personal tokens to bet/argue with, a score card, to condition dialogue about sustainable urban design. "Continents of Co-development" a game design on a world map still under development. "Reframing Waste" game materials analyse existing waste practices and propose future visions.
"Analogue games", "Co-design"
Ehn 1988 - Design games
Brandt et al 2008, Design dialogues
Brandt 2011 Contextualising the materials
Eriksen 2012 Material Matters in co-designing, content versus format


Event Location:
The Microsoft Technology Center
5404 Wisconsin Ave, Suite 700
Chevy Chase, Maryland
Abstract:
Let's go from Cradle to Grave with the one dimension in 99.99999% of cubes, the dreaded Date dimension. Without this dimension users wouldn't know if it is worth staying open on a holiday or which day of the week the most fresh produce ships or even what their bonus will be. What should be included in the dimension? Should you use the wizard to generate? In this session, we will explore a generic date dimension load script and configuring SSAS to use the table as the time dimension. We will explore performance considerations of attribute hierarchies compared with usability benefits of user hierarchies. Finally, we will address the advantages of role-playing dimensions to make Order Date, Ship Date and Received Date dimensions.
Speaker(s): Sandra Mueller,
Abstract:
Are you looking for a career change? Good News! Technology is back on the move and companies are again hiring. We’ll cover key strategies you can use during the interviews first 10 minutes to increase chances for a new job and new adventure.
Speaker(s): Chris Skorlinski,
Abstract:
When moving databases to a virtual environment the performance metrics DBAs typically use to troubleshoot performance issues such as O/S metrics, storage configurations, CPU allocation and more become unreliable. DBAs no longer have a clear, reliable view of the factors impacting database performance. Understanding the difference between the physical and virtual server environment adds a new dimension to the DBA tasks. This presentation describes the changes that DBAs need to make in their performance and monitoring practices.
Speaker(s): Thomas LaRock,
Abstract:
Almost every SQL Developer is familiar with Table Variables and Temporary Tables. While each of these objects represent temporary storage, there are also substantial differences between them. Understanding the differences between Table Variables and Temporary Tables, and the ramifications that those differences cause, is essential to being able to properly select the appropriate object for use in your development tasks. In this code filled session, we’ll discover the differences and similarities of Temporary Tables and Table Variables, dispel some widespread myths about each, and answer the most important questions of them all, "When do I use one or the other and what are the various impacts of doing so?"
Speaker(s): Wayne Sheffield,
Abstract:
We will implement several code samples based on a series of articles amd posts identifying similar records between two different sources or grouping of records from a single source, based on existing column string of values. We will define an approach, review actual implementations with various SQL tools(TSQL, VB,SSIS and MDS). There are many facets to review. I would like to start by drawing concepts from several articles from experienced practitioners, either from academia or the commercial market. They will be footnoted at the end of the session. Although we are discussing matching, we need to address several steps prior to getting to the actual use of matching algorithms
Speaker(s): Ira Warren,
Abstract:
Whether predicting customers, All Stars or concert set lists, the process and the tools remain the same. Microsoft’s Analysis Services Data Mining tools enable you to quickly profile your data, identify hidden relationships and predict future outcomes based on those relationships. Join me to see what data mining is, what data mining is not and how Microsoft's data mining tools can help you analyze your business. During this session, I will walk us through a start-to-finish data mining prediction project. It's easier than you might have thought.
Speaker(s): Mark Hudson,
Abstract:
SQL Server is primarily designed for set-based operations, so code that performs Row-By-Agonizing-Row (RBAR) operations is going against the design, rather than working with it. Come to this code filled session, where we will examine several recent additions to SQL Server, and learn how the vast majority of RBAR code can be replaced with efficient, set-based code. Learn how the APPLY operator works; iterate through incoming data just once with the MERGE statement; “slice and dice” your data with the Windowing (ranking) functions; re-write your multi-statement table-valued functions to inline functions to help the optimizer and speed up your queries; learn how to create a grouped delimited list – without loops!
Speaker(s): Wayne Sheffield,
Abstract:
This session will cover the new features of PowerShell in SQL Denali. The new module for SQL Server, the new module for SSAS, and the new Replica cmdlets for High Availability databases.
Speaker(s): Aaron Nelson,
Abstract:
Microsoft’s SQL Server Analysis Services is best known for its ability to build and manage OLAP data cubes. In addition to that core functionality, SSAS enables users to define key performance indicators (KPIs), profile data, mine data and predict future activities using the results of that mining. Perhaps best of all, SSAS is included as part of SQL Server 2008 Standard and Enterprise Editions. This session introduces the audience to the capabilities of SSAS, businesses uses for those tools and ways to integrate SSAS with Integration Services and Reporting Services.
Speaker(s): Mark Hudson,
Abstract:
Track source code changes and manage the synchronization between the source control system and your database. Using SQL Source Control and your favorite source control system, this task can be automated, and you can catch those sneaky developers making changes they forgot to tell you to source.
Speaker(s): James Gaines,
Abstract:
Want to know about VMWare and what it means for your databases? This session will go through the hardware and terminology around this technology. Learn how to optimize your SQL Servers for VMs and what to tell your storage engineers.
Speaker(s): Joseph D'Antoni,
Abstract:
In this session, I'll talk about Change Data Capture (CDC) terminology and configuring a database for Change Data Capture. I'll show how to read CDC log tables, and show CDC code samples. I'll discuss CDC and SQL Server Agent jobs, and the use of CDC versus database triggers (and where triggers are still needed). Also, the impact of CDC on the transaction log and system performance will be explored. Finally, I'll talk about how to deal with schema changes, performance tuning, and using CDC in an ETL (Extract-Transform-Load) environment with SQL Server Integration Services.
 In this session, I'll go through all the new features in SQL Server Denali. I won't focus excessively on any one feature - instead, I'll go through as many new features in SQL Server Denali as time permits.
Speaker(s): Kevin Goff,
Abstract:
In this session we’ll look in depth at the three main types of join operations (Nested Loops, Hash and Merge) in order to understand how query plans are computed. We will look at the performance of Hash and Merge joins in different scenarios and explain why they are sometimes associated with poor performing queries.
Speaker(s): Luke Jian,
Abstract:
Independent BI consultant, MSSQL Server MVP, and practicing CPA Bill Pearson examines the various options available for organizing and protecting your consulting business. In this section, he covers C Corp, S Corp, LLC, Partnership, and Sole Proprietorship (“Schedule C”) options, as well as other practical advice (trademarks, etc.) useful in forming your business entity.
Speaker(s): William E Pearson III,
Abstract:
Performance of SQL Server poor? One cause may have been that starting file size that you didn't think was important because it will auto-grow. Why is auto-grow bad? Why shouldn't files be auto-shrunk? Why keep that free space in the files? Explore the physical structure of a database, how table structure effects use of memory and key mistakes to avoid. Additionally, dive into the transaction log process - VLFs, auto-recovery and lock escalation. Solid foundation for Programmers and Administrators!
Speaker(s): Sandra Mueller,
Abstract:
While you can see how to run through Wizards deploy a failover cluster in 60 minutes in other places, what a DBA really needs is a solid foundation of Windows to truly be able to understand that implementation and its subsequent administration. This session will demystify the Windows layer of clustering and present it from a DBA focus. Using Windows Server 2008 R2, some of the topics that will be shown are: failover cluster validation and its impact on installing SQL Server, a tour of the new Failover Cluster Manager and how it can be used for administration, using the new cluster logs for troubleshooting, and more.
Speaker(s): Allan Hirt,
Abstract:
Common Table Expressions (CTEs) serve two main functions: first they remove the clutter of subqueries out of the FROM clause while simultaneously making them easy to reference multiple times by alias if need be, and second they make it possible to do recursive queries. Learn the basics of using CTEs to streamline T-SQL code and to query self-referential tables.
Speaker(s): Geoff Johnson,
Abstract:
Leadership coaching is the practice of using relational influence, the people kind, not the database kind, to develop and empower adult leaders. Coaching embraces a set of structured techniques designed to help you make other people more effective in reaching their goals and developing as leaders and can be a powerful tool for developing and managing teams in a technical environment.
Speaker(s): Brian Moran,
Abstract:
An overview of basic database architecture and operations such as startup, shutdown, backup, redo log, alert log, tablespaces, etc. for SQL Server database professionals. This will provide a broad look at Oracle 11g from a DBA perspective. This session will give you a basic understanding of the terminology and command structure used in daily operations. It is not that complicated, come and see for yourself.
Speaker(s): James Gaines,
Abstract:
Do you have the needed skills for your SQL Server career? Whether you are looking to land your first job or advance into a managerial position, this session will offer recommendations to you. From interview tips to skills all employers are looking for in SQL Server professionals, this session will benefit you.
Speaker(s): Jeremy Kadlec,
Abstract:
One of the great features of SQL Server 2008 is its native support for spatial data types. Spatial data represents information about the physical location and shape of geometric objects. These objects can be point locations or more complex objects such as countries, roads, or lakes. This session looks at how you can take advantage of this support for spatial data to enhance your location based applications in new and interesting ways. You will learn how to load and query spatial data in SQL Server as well as how to present the data in a Bing map.
Speaker(s): Dan Clark,
Abstract:
Okay, you’ve run the Wizard and have Replication up and running; but how does it really work? Learn the behind the scenes for Transactional Replication as we follow the data from Publisher to Subscriber. We’ll look at both design and troubleshooting techniques to ensure your data is moving at near-real-time through your topology.
Speaker(s): Chris Skorlinski,
Abstract:
Execution plans contain a lot of information that can guide you in your performance tuning process. Since SQL 2005 it is possible to retrieve the execution plans stored in the cache using DMVs and DMFs. However, as they are stored in XML format it can be cumbersome and difficult to extract the information you need. In this session, you will learn how the XML query plan is structured and how to use SQL Server’s built-in XQuery language to extract information. Examples include indexes that the optimizer indicates would increase performance if implemented and queries that use table scans or nested loop joins.
Speaker(s): Sebastian Meine,
Abstract:
It was the worst of times. It was the age of foolishness. I had a long-winded, manual, GUI-intensive checklist for configuring new SQL Server installations. Automating that checklist with PowerShell and SMO ushered in the best of times and an age of wisdom. In this session, we will walk through my new automated checklist, make the case for using PowerShell for such tasks, and point those still mired in the winter of despair and manual drudgery towards the spring of hope that is scripting and automation.
Speaker(s): Brian Garraty,
Abstract:
This session will focus on the internals of index and how they are structured at a physical level. Understanding how indexes are structured can then help understand how they can help improve query performance by reducing lookups, serving as a covering index, etc. The session will use DBCC Page/Ind to look at how different types of indexes are structured and make some suggestions on the best way to structure tables, keys, and indexes to get the best performance from them. Will also cover index options that can affect how indexes are structured and how Index Rebuild/Reorg work at the physical level.
Speaker(s): Ashton Hobbs,
Abstract:
Using SQL Server 2008 R2 Reporting Services and Report Builder 3.0, report writers can store, re-use, and modify pieces of reports using "report parts". Report parts are stored on the report server and are provided to others for collaboration in a report part library to increase initial development productivity and decrease maintenance turn-around time. This presentation will describe how to set up a user-friendly and easily maintained report part library by discussing how to create report parts, how to store them on the report server, and how to import them into a new report.
Speaker(s): Jessica Moss,
Abstract:
It’s bad enough to spend hours finding and fixing database defects, explaining to the rest of the team what went wrong and trying to clean up the mess. It’s even worse when a defect causes the end-user to make a bad decision. Database defects are far too costly and most testing practices do not adequately detect or prevent them. This presentation introduces tSQLt, a framework for automated database unit testing. You’ll learn techniques to write SQL code that is resilient to defects and is easier to change and maintain.
Speaker(s): Dennis Lloyd Jr,
Abstract:
In this “demo-tastic” presentation, SSIS trainer, author, and consultant Andy Leonard explains the what, why, and how of an SSIS framework that delivers metadata-driven package execution, connections management, and centralizes logging. Key takeaways: 1) Developers can migrate packages from Development, through their lifecycle, to Production without editing SSIS Connection Managers properties. 2) A metadata-driven approach to SSIS package execution. 3) Demonstration of a centralized logging reporting application.
Speaker(s): Andy Leonard,
Abstract:
Curious as to what a LUN is? Or what RAID level you should use for you database files? This session will cover the basics of what a SAN is, how it works, and how to talk to your SAN Admins. We will also discuss various ways to configure SQL Server for optimal I/O.
Speaker(s): Joseph D'Antoni,
Abstract:
Model-Driven Database Development: Myths, Magic and Methods. In this presentation, Karen discusses data model-driven database development from the point of view of the Data Architect, the DBA, and the Developer.  and "Just who do you think you are?". Finally, 10 tips for making model-driven database development successful in your organization's culture and environment.
Speaker(s): Karen Lopez,
Abstract:
XML processing become more and more a part of our daily life. Today anyone, DBA or Developer, interferes one way or another with XML-based processes. In the SQL Server XML 101 session I'll go over all XML data types from "ground zero" to advanced tricks and tips. Using real life examples I'll show most efficient ways to work with an XML of any complexity and size. I'll cover the problems that you can anticipate to deal with with XML. How to: load the files using T-SQL code, dynamically retrieve and element or attribute, use different XML data types' methods and functions.
Speaker(s): Alex Grinberg,
Abstract:
Window functions greatly simplify the syntax and efficiency of queries that mix scalar with aggregate values. Learn how to add aggregate values to a query result without a GROUP BY clause, how to add row numbers and ranking values to query results, and how to subdivide a set of results evenly into a given number of parts.
Speaker(s): Geoff Johnson,
Abstract:
Optimal configuration and maintenance of the I/O subsystem is critical and can ultimately be responsible for higher response times of your applications. The HDDs are by design about 1 million times slower than the memory or CPU. In this session we analyze the different options that exist for durable storage, what are their pros and cons . Solid state drives are a viable option and we are going under the covers to see how you can best use them as an alternative to a large and expensive SAN in your infrastructure
Speaker(s): Luke Jian,
Abstract:
This session will cover how SQL server uses locking in queries and how that can lead to blocking issues. The session will provide a detailed view into what happens for each of the different isolation levels available within SQL Server and discuss how each one can affect locking/blocking within the system. The session will then discuss how to use SQL Server tools such as SQL Profiler, DMVs, and Extended Events to detect and resolve locking/blocking issues within SQL Server.
Speaker(s): Ashton Hobbs,
Abstract:
In this presentation, Microsoft BI Architect and SQL Server MVP Bill Pearson explores “self-service BI” as a concept. We then provide a walkthrough of the primary features of PowerPivot, focusing on how we can exploit its capabilities to offer the benefits of BI to decision makers and analysts throughout our organizations. “There’s no service like self-service …”
Speaker(s): William E Pearson III,
This is a list of speakers from the XML Guidebook records. The details and URLs were valid at the time of the event.
LinkedIn: http://www.linkedin.com/in/karenlopez
Contact: http://datamodel.com
Karen Lopez is a Sr. Project Manager and Architect for InfoAdvisors. A frequent speaker at conferences and local user groups, she has 20+ years of experience in project and data management on large, multi-project programs. Karen is a chronic volunteer, a Data Platform MVP, and an active advocate for science, technology, engineering, and mathematics (STEM) education and data quality. Karen’s presentations are known for their lively and interactive approach to learning. Her motto: “Love Your Data!”
Contact: http://allkindsofdatabasestuff.blogspot.com/
James Gaines currently works as a Custom Software Developer in the area of Database Development for Mylan, Inc. utilizing SQL Server and .Net technologies. In the past he has worked with a variety of databases and operating systems, as a Database Administrator / System Administrator. He specializes in OLTP database implementations, support and tuning.
Mark Hudson is an MCITP with many years of experience in business intelligence and data analysis. He has developed data solutions using numerous platform tools including multiple SQL Server versions. He is a data architect and developer with CapTech (www.captechconsulting.com) and served as a leader of the Richmond SQL Server User Group (www.richmondsql.org).
Contact: http://www.KevinSGoff.net
Kevin S. Goff (http://www.kevinsgoff.net) is a Microsoft SQL Server MVP Database architect/developer/speaker/author Regular columnist for CoDe Magazine on .NET, SQL Server, and Business Intelligence topics Frequent speaker at community events in the Mid-Atlantic region. Host of BDBI Radio (http://www.bdbiradio.com), a weekly webcast on SQL/BI topics
Mark Hudson is an MCITP with many years of experience in business intelligence and data analysis. He has developed data solutions using numerous platform tools including multiple SQL Server versions. He is a data architect and developer with CapTech (www.captechconsulting.com) and served as a leader of the Richmond SQL Server User Group (www.richmondsql.org).
LinkedIn: http://www.linkedin.com/profile/view?id=3997984amp;trk=hb_tab_pro_top
Contact: http://joeydantoni.com
Joseph D'Antoni is a Senior Consultant and Microsoft Data Platform MVP with over 20 years of experience working in both Fortune 500 and smaller firms. He is a Principal Consultant for Denny Cherry Associates and lives in Malvern, PA. He is a frequent speaker at major tech events like Microsoft Ignite, PASS Summit, and Enterprise Data World. He blogs about all topics technology at joeydantoni.com. He believes that no single platform is the answer to all technology problems. Joseph holds a BS in Computer Information Systems from Louisiana Tech University and an MBA from North Carolina State University, and is the co-author of the Microsoft book "Introducing SQL Server 2016”.
Contact: http://www.KevinSGoff.net
Kevin S. Goff (http://www.kevinsgoff.net) is a Microsoft SQL Server MVP Database architect/developer/speaker/author Regular columnist for CoDe Magazine on .NET, SQL Server, and Business Intelligence topics Frequent speaker at community events in the Mid-Atlantic region. Host of BDBI Radio (http://www.bdbiradio.com), a weekly webcast on SQL/BI topics
LinkedIn: http://www.linkedin.com/profile/view?id=3997984amp;trk=hb_tab_pro_top
Contact: http://joeydantoni.com
Joseph D'Antoni is a Senior Consultant and Microsoft Data Platform MVP with over 20 years of experience working in both Fortune 500 and smaller firms. He is a Principal Consultant for Denny Cherry Associates and lives in Malvern, PA. He is a frequent speaker at major tech events like Microsoft Ignite, PASS Summit, and Enterprise Data World. He blogs about all topics technology at joeydantoni.com. He believes that no single platform is the answer to all technology problems. Joseph holds a BS in Computer Information Systems from Louisiana Tech University and an MBA from North Carolina State University, and is the co-author of the Microsoft book "Introducing SQL Server 2016”.
Contact: http://www.edgewoodsolutions.com
Jeremy Kadlec is the CTO @ Edgewood Solutions, co-founder of MSSQLTips.com, co-leader of the Baltimore SQL Server Users Group and a SQL Server MVP.
Contact: http://allkindsofdatabasestuff.blogspot.com/
James Gaines currently works as a Custom Software Developer in the area of Database Development for Mylan, Inc. utilizing SQL Server and .Net technologies. In the past he has worked with a variety of databases and operating systems, as a Database Administrator / System Administrator. He specializes in OLTP database implementations, support and tuning.
LinkedIn: https://www.linkedin.com/pub/allan-hirt/1/b72/673
Contact: http://www.sqlha.com/blog
SQLHA, LLC founder, consultant, trainer, author, and business continuity, infrastructure, and virtualization expert Allan Hirt has been working with SQL Server since 1992 when it was still a Sybase product. He has also been clustering in Windows Server since the late 1990s when it was known as Wolfpack. Currently a dual Microsoft MVP (Data Platform; Cloud and Datacenter Management) as well as a VMware vExpert, Allan works with all sizes of customers, no matter if they are on premises or in the public cloud. He also delivers training and speaks at events over the world.
Contact: http://www.testdrivendatabases.com
Dennis Lloyd is a software development coach at Curiously Correct. He has broad experience in the software development life-cycle with specialized focus on Agile practices and database technologies. He is co-founder of the tSQLt unit testing framework for SQL Server and is active in the SQL Server open source community.
Over 35 years experiences in Software Sevelopemt, IT Management and BI Architecture.
LinkedIn: https://www.linkedin.com/in/alex-grinberg-36773a6/
I have more than 20 years of IT experience. My primary focus is with the latest Microsoft technologies including .NET (VB and C#), SSRS and SSIS. I provide services in tuning, optimization, analysis and development for the creation of new applications, converting legacy technologies (SQL Server, VB.NET and C# ) and site training. I have worked for CSC, VerticalNet, IDP, LSAC , and TMNAS (to name a few) and I am currently employed with Cox Automotive. I am Apress author book "XML and JSON Recipes for SQL Server", also wrote number of articles for Simple-Talk and SQLServerCentral.com
LinkedIn: http://www.linkedin.com/in/dxclark/
Contact: http://drclarkblog.wordpress.com/
Dan Clark is a senior data analytics consultant. He is focused on all things data analytics and training others how to get value from their data. Dan has published several books and numerous articles on .NET programming and data analytics. He is a regular speaker at various developer and database conferences and user group meetings and enjoys interacting with the Microsoft developer and database communities. His latest book Beginning Power BI published by Apress is a will get you up and running with self-service data analytics on the Power BI platform in no time.
LinkedIn: http://www.linkedin.com/in/WayneSheffield
Contact: http://blog.waynesheffield.com/wayne
Wayne Sheffield, a Microsoft Certified Master in SQL Server and Microsoft Most Valuable Professional, started working with xBase databases in the late 80’s. With over 25 years in IT, he has worked with SQL Server (since 6.5 in the late 90’s) in various dev/admin roles, with an emphasis in performance tuning. He is the author of several articles at www.sqlservercentral.com, a co-author of “SQL Server T-SQL Recipes”, and enjoys sharing his knowledge by presenting at SQL events worldwide and blogging at http://blog.waynesheffield.com/wayne
LinkedIn: https://www.linkedin.com/e/fpf/252170891
Contact: https://mvp.support.microsoft.com/profile=02C5CD07-7511-4151-A678-3A4A3451F85E
Bill Pearson created Island Technologies Inc. in 1997, and has developed a large and diverse customer base since. Bill#39;s background as a CPA, Internal Auditor, Management Accountant, and SQL Server MVP (BI) enables him to provide value to clients as a liaison between Accounting / Finance and Information Services. Bill has implemented enterprise business intelligence systems over the years for many Fortune 500 companies and focuses his practice upon the integrated Microsoft Business Intelligence
Chris Skorlinski has been with Microsoft for 17 years. He is a Support Escalation Engineer at the Microsoft Charlotte NC office specializing in performance tuning and troubleshooting Replication. His is a contributor to SQLShare.com training as well as his own BLOGs on Replication Performance at http://blogs.msdn.com/ReplTalk/. #160;
LinkedIn: https://www.linkedin.com/in/sqlvariant
Contact: http://sqlvariant.com/
Aaron Nelson is an author, public speaker, blogger, and leader in the community. He has over 15 years of experience in architecture, Business Intelligence, development, and performance tuning of SQL Server. Aaron has received many certifications and is a six time winner of the Microsoft MVP Award. Aaron leads the PowerShell Virtual Group of PASS (SQLPS.io), is a board member of PowerShell.org, and is a volunteer at his PASS Local Group, AtlantaMDF.
LinkedIn: https://www.linkedin.com/e/fpf/252170891
Contact: https://mvp.support.microsoft.com/profile=02C5CD07-7511-4151-A678-3A4A3451F85E
Bill Pearson created Island Technologies Inc. in 1997, and has developed a large and diverse customer base since. Bill#39;s background as a CPA, Internal Auditor, Management Accountant, and SQL Server MVP (BI) enables him to provide value to clients as a liaison between Accounting / Finance and Information Services. Bill has implemented enterprise business intelligence systems over the years for many Fortune 500 companies and focuses his practice upon the integrated Microsoft Business Intelligence
Chris Skorlinski has been with Microsoft for 17 years. He is a Support Escalation Engineer at the Microsoft Charlotte NC office specializing in performance tuning and troubleshooting Replication. His is a contributor to SQLShare.com training as well as his own BLOGs on Replication Performance at http://blogs.msdn.com/ReplTalk/. #160;
Sandra A. Mueller started with Administration (via a programming job) in 1997 and moved into Database Design and performance optimization. She has always had a passion for sharing knowledge and trying to help others avoid the hard lessons she learnt. To this end she has been an MCT for 16 years, writing course ware, providing training and follow-on project consultation. In 2004 after an activation with the military her focus turned to SQL Server 2005 and its Business Intelligence (BI) capabilities. She is currently working as a BI Architect with SQL Server 2008R2 OLAP solutions. Sandra blogs on http://www.SandraAMueller.com. She recently started the Raleigh NC SQL Server BI User Group (http://www.tripassBI.org). She consistency speaks at SQLSaturday events and supports her local community by speaking, volunteering and attending regional chapters.
LinkedIn: http://www.linkedin.com/in/sebastianmeine
Contact: http://sqlity.net/en/blog/
Sebastian Meine, Ph.D. is the SQL Stylist behind sqlity.net llc. In 2010 he founded sqlity.net to fully engage in his passion for SQL Server. Armed with a Ph.D. in Computer Science and years of experience in architecting DBs for a global Fortune 50 company, Sebastian now provides training and consulting services for his clients, specializing in SQL Server Security, Test Driven Development and Performance. Sebastian is an experienced public speaker, published author, president of the Philly PASS Chapter, PASS Regional Mentor and coauthor lead developer of tSQLt.
Contact: http://selectstatements.blogspot.com
Geoff is the BI Developer for Custom Data Systems, Inc., a software company offering data management for CPA associations and similar non-profit groups. He has been working with SQL Server for over fifteen years, with a focus on BI and SSRS for 6+ years. Since January of 2016 he has been designed and implemented a data warehouse solution for CDS, Inc. He is an active member of the Richmond SQL Server User Group and counts it a privilege to share what he has learned the hard way with others so they don't have to. He also occasionally blogs about his lessons learned.
Contact: http://NULLgarity.wordpress.com
Brian Garraty is a DBA for Virginia Beach City Public Schools. Brian has over a decade of experience working with SQL Server including spending the past 7 as a full-time DBA. Prior to switching to the DBA role, Brian worked primarily as a Windows and web developer. Brian is an MCITP: Database Administrator.
LinkedIn: http://www.linkedin.com/in/ljian
Contact: http://blog.sqlpositive.com
Luke Jian is an experienced database architect with a leading healthcare information company. A frequent speaker at conferences and local user groups he has 15+ years of experience in database design, development and optimization on SQL Server and Big Data projects.
Ashton Hobbs has been using SQL Server for over 16 years going all the way back to SQL Server 6.5 and even a stint on Sybase/Watcom. Ashton has created tools to use with SQL Server including creating ApexSQL Edit/Debugger and currently working on MySSMS and other addins for SQL Server. Ashton also is a parter at High Order Function, providing development, SQL, and consultant services to government and private industry.
Sandra A. Mueller started with Administration (via a programming job) in 1997 and moved into Database Design and performance optimization. She has always had a passion for sharing knowledge and trying to help others avoid the hard lessons she learnt. To this end she has been an MCT for 16 years, writing course ware, providing training and follow-on project consultation. In 2004 after an activation with the military her focus turned to SQL Server 2005 and its Business Intelligence (BI) capabilities. She is currently working as a BI Architect with SQL Server 2008R2 OLAP solutions. Sandra blogs on http://www.SandraAMueller.com. She recently started the Raleigh NC SQL Server BI User Group (http://www.tripassBI.org). She consistency speaks at SQLSaturday events and supports her local community by speaking, volunteering and attending regional chapters.
LinkedIn: http://www.linkedin.com/in/sqlrockstar/
Contact: http://thomaslarock.com
Thomas LaRock is a Head Geek at SolarWinds and a Microsoft Certified Master, Data Platform MVP, VMware vExpert, and a Microsoft Certified Trainer. He has over 15 years’ experience in the IT industry in roles including programmer, developer, analyst, and database administrator.
LinkedIn: http://www.linkedin.com/in/AndyLeonard
Contact: https://andyleonard.blog
Andy Leonard is founder and Chief Data Engineer at Enterprise Data Analytics, Microsoft Data Platform MVP, creator of the DILM (Data Integration Lifecycle Management) Suite, an SSIS trainer, consultant, developer, Business Intelligence Markup Language (Biml) developer and BimlHero, SQL Server database and data warehouse developer, community mentor, engineer, and farmer. He is a co-author of "The Biml Book and SQL Server Integration Services Design Patterns" and author of "Managing Geeks - A Journey of Leading by Doing", "Data Integration Lifecycle Management with SSIS", "Building Custom Tasks for SSIS", and the "Stairway to Integration Services". Andy blogs at andyleonard.blog where you can learn more on the About Andy page.
LinkedIn: http://www.linkedin.com/in/ljian
Contact: http://blog.sqlpositive.com
Luke Jian is an experienced database architect with a leading healthcare information company. A frequent speaker at conferences and local user groups he has 15+ years of experience in database design, development and optimization on SQL Server and Big Data projects.
LinkedIn: http://www.linkedin.com/in/briancmoran
Contact: http://www.linchpinpeople.com/author/brian-moran/
Brian Moran is Chief Servant Officer at Linchpin People and has been active in the SQL Server community for more than 20 years. Brian co-founded one of the first SQL Server user groups in the world, was one of the first SQL Server MVPs, was on the SQL Server Magazine launch team, and has served on the PASS Board of Directors in two separate terms. Brian#39;s roles in the SQL Server community include technologist, author, community leader, and entrepreneur.
LinkedIn: http://www.linkedin.com/in/WayneSheffield
Contact: http://blog.waynesheffield.com/wayne
Wayne Sheffield, a Microsoft Certified Master in SQL Server and Microsoft Most Valuable Professional, started working with xBase databases in the late 80’s. With over 25 years in IT, he has worked with SQL Server (since 6.5 in the late 90’s) in various dev/admin roles, with an emphasis in performance tuning. He is the author of several articles at www.sqlservercentral.com, a co-author of “SQL Server T-SQL Recipes”, and enjoys sharing his knowledge by presenting at SQL events worldwide and blogging at http://blog.waynesheffield.com/wayne
Contact: http://www.jessicammoss.com
Jessica M. Moss is a well-known architect, speaker, author, and Microsoft MVP of SQL Server Business Intelligence. Jessica#39;s expertise includes data warehouse modeling, Integration Services ETL, Analysis Services semantic modeling, Reporting Services report design, and helping customers across industries successfully implement and enhance their BI solutions. She enjoys sharing her knowledge with the SQL community and has co-authored numerous technical books.
Contact: http://selectstatements.blogspot.com
Geoff is the BI Developer for Custom Data Systems, Inc., a software company offering data management for CPA associations and similar non-profit groups. He has been working with SQL Server for over fifteen years, with a focus on BI and SSRS for 6+ years. Since January of 2016 he has been designed and implemented a data warehouse solution for CDS, Inc. He is an active member of the Richmond SQL Server User Group and counts it a privilege to share what he has learned the hard way with others so they don't have to. He also occasionally blogs about his lessons learned.
Ashton Hobbs has been using SQL Server for over 16 years going all the way back to SQL Server 6.5 and even a stint on Sybase/Watcom. Ashton has created tools to use with SQL Server including creating ApexSQL Edit/Debugger and currently working on MySSMS and other addins for SQL Server. Ashton also is a parter at High Order Function, providing development, SQL, and consultant services to government and private industry.
The following is a list of sponsors that helped fund the event.


GL Class
The static module that contains all the features
Item Index
Methods
create
(
Gl
-
options
creates a new WebGL canvas
Parameters:
-
options
Objectsupported are: width, height
Returns:
Gl:
gl context for webgl
gl.animate
()
Launch animation loop (calls gl.onupdate and gl.ondraw every frame)
gl.captureGamepads
()
Tells the system to capture gamepad events on the canvas.
gl.captureKeys
(
-
prevent_default
Tells the system to capture key events on the canvas. This will trigger onkey
Parameters:
-
prevent_default
Booleanprevent default behaviour (like scroll on the web, etc)
gl.captureMouse
(
-
capture_wheel
Tells the system to capture mouse events on the canvas. This will trigger onmousedown, onmousemove, onmouseup, onmousewheel callbacks in the canvas.
Parameters:
-
capture_wheel
Booleancapture also the mouse wheel
gl.getGamepads
()
returns the detected gamepads on the system


We must know. We will know.
Can we devise a process to determine in a finite number of operations, whether a first order logic statement is valid?
λ Calculus
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: |
0) INPUT INVENTORY FILE=A PRICE FILE=B, OUTPUT PRICED-INV FILE=C UNPRICED-INV FILE=D, HSP D. 1) COMPARE PRODUCT-NO(A) WITH PRODUCT-NO(B) IF GREATER GO TO OPERATION 10; IF EQUAL GO TO OPERATION 5; OTHERWISE GO TO OPERATION 2. 2) TRANSFER A TO D. 3) WRITE ITEM D. 4) JUMP TO OPERATION 8. 5) TRANSFER A TO C. |
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: |
6) MOVE UNIT-PRICE(B) TO UNIT-PRICE(C). 7) WRITE ITEM C. 8) READ ITEM A; IF END OF DATA GO TO OPERATION 14. 9) JUMP TO OPERATION 1.  11) JUMP TO OPERATION 1. 12) SET OPERATION 9 TO GO TO OPERATION 2. 13) JUMP TO OPERATION 2.  15) REWIND B. 16) CLOSE-OUT FILES C, D. 17) STOP. (END) |
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: |
(defun sieve-of-eratosthenes (maximum) (loop with sieve = (make-array (1+ maximum) :element-type 'bit :initial-element 0) for candidate from 2 to maximum when (zerop (bit sieve candidate)) collect candidate and do (loop for composite from (expt candidate 2) to maximum by candidate do (setf (bit sieve composite) 1)))) |
\((~T \in T \circ.×T)/T←1 \downarrow ⍳R\)
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: |
mother_child(trude, sally). father_child(tom, sally). father_child(tom, erica). father_child(mike, tom). sibling(X, Y) :- parent_child(Z, X), parent_child(Z, Y). parent_child(X, Y) :- father_child(X, Y). parent_child(X, Y) :- mother_child(X, Y). |
1: 2: 3: 4: 5: 6: 7: 8: |
-module(mymath). -export([square/1,fib/1]). square(Value) -> Value*Value. fib(0) -> 0; fib(1) -> 1; fib(N) when N>1 -> fib(N-1) + fib(N-2). |
1: 2: 3: 4: 5: 6: |
function factorial(n) { if (n == 0) { return 1; } return n * factorial(n - 1); } |
1: 2: 3: 4: 5: 6: 7: |
ulong factorial(ulong n) { if (n<2) return 1; else return n * factorial(n-1); } |
1: 2: 3: 4: 5: 6: 7: 8: |
data Vect : Nat -> Type -> Type where Nil : Vect 0 a (::) : (x : a) -> (xs : Vect n a) -> Vect (n + 1) a total append : Vect n a -> Vect m a -> Vect (n + m) a append Nil ys = ys append (x :: xs) ys = x :: append xs ys |
We must know. We Will know


Originally from Pasadena, California, I've made Louisville, Kentucky my home for the past three years. Pasadena is where I studied at the Art Center College of Design and learned many of the skills I use today. I create my designs using the latest technologies, Photoshop and Illustrator but most of the time I start with a sketch using pen and paper. I often use my own illustrations and photos in my graphic designs. I am best known for my most long-lived branding design, the EZ-UP canopy logo, a product that has an international audience. I have experience in all types of media design, billboards, bus ads, stationary, logos, and printed materials as well as photography. Some of my past clients include the City of Los Angeles Workforce Investment Board, the Earned Income Tax Credit Board and Los Angeles International Airport. My latest endeavor has been to author this website that will hopefully afford me another way to showcase my work in this new market.
...as an aside, this site would not have been possible had it not been for the encouragement, patience and support of my wonderful wife Trudi. Thanks!


Eagles' Malcolm Jenkins urges Philadelphia police reforms, draws rebuke from union
by Ryan GaydosPhiladelphia Eagles defensive back Malcolm Jenkins’ opinion piece about reforming the Philadelphia Police Department drew a sharp rebuke from the City of Brotherly Love's police union on Tuesday.
Jenkins, who has been one of the NFL’s most outspoken voices on social injustice, wrote an essay published in the Philadelphia Inquirer calling for a half-dozen reforms under the next Philadelphia police commissioner.
COWBOYS OWNER JERRY JONES AGREES COLIN KAEPERNICK'S WORKOUT TURNED INTO A 'CIRCUS'
The three-time Pro Bowler called for reforms in “how law enforcement police our children,” “a commissioner who fights back against the police union” and urged increased “accountability” and “transparency” under the next commissioner. Philadelphia Mayor Jim Kenney is set to replace former Commissioner Richard Ross, who resigned in August after being accused of mishandling sexual harassment claims filed by two female police officers in a lawsuit.
“Nearly every time we hear a story of an officer abusing power, whether through violence or racist Facebook postings, the police union is there to defend the bad behavior,” Jenkins wrote. “We need a commissioner who isn’t in lockstep with the union and who will instead push back when the union tries to hide and justify bad behavior.”
COLIN KAEPERNICK EXPOSED NFL HYPOCRISY IN HANDLING WAIVER SITUATION: AL SHARPTON
Jenkins’ op-ed drew rebuke from the Philadelphia Fraternal Order of Police. The union shared a letter on social media slamming Jenkins for his editorial and the Inquirer for running it.
“Sponsoring a racist attack by a non-resident washed-up football player and trying to disguise it as a commentary on police in Philadelphia shows why the only people who still subscribe to your paper are those who use it to paper train their puppies.
“Hurling slurs and false allegations against police offers nothing in the new way of improvement. Like other has-been football players, they now do most of their running with their mouth.
“This character’s ‘proposals’ would leave Philadelphia’s many crime victims as defenseless as his poor play has left his football team.
PHILADELPHIA EAGLES TO HOST FINAL MINUTES OF HIGH SCHOOL PLAYOFF GAME AFTER SHOOTING SUSPENDED PLAY
Kenney, however, expressed support for Jenkins. He told CBS Philadelphia he welcomes the suggestions.
“He has every right to give us some direction and make suggestions and we’ve been listening to the community the whole time,” Kenney said.
Kenney added that he will choose the new police commissioner soon.
Jenkins has been involved in social justice reform over the last few years. In 2017, Jenkins took a ride along with Philadelphia police to try and understand what others are going through.
CLICK HERE FOR MORE SPORTS COVERAGE ON FOXNEWS.COM
Jenkins, 32, is in his sixth season with Philadelphia. Through 10 games, he has three pass deflections and 46 combined tackles. He’s made the Pro Bowl the last two seasons.


|
Drake
|
A class that extends QpOutputTranslatorSystem to output an additional bot_core::atlas_command_t. More...
#include <drake/examples/humanoid_controller/atlas_command_translator_system.h>
Public Member Functions | |
| AtlasCommandTranslatorSystem (const RigidBodyTree< double > &robot) | |
| const systems::OutputPort< double > & | get_output_port_atlas_command () const |
| Returns the output port for bot_core::atlas_command_t. More... | |
Does not allow copy, move, or assignment | |
| AtlasCommandTranslatorSystem (const AtlasCommandTranslatorSystem &)=delete | |
| AtlasCommandTranslatorSystem & | operator= (const AtlasCommandTranslatorSystem &)=delete |
| AtlasCommandTranslatorSystem (AtlasCommandTranslatorSystem &&)=delete | |
| AtlasCommandTranslatorSystem & | operator= (AtlasCommandTranslatorSystem &&)=delete |
A class that extends QpOutputTranslatorSystem to output an additional bot_core::atlas_command_t.
|
delete |
|
delete |
|
explicit |
| robot | A reference to the RigidBodyTree within the plant that is being controlled. The lifespan of this reference must exceed that of this class's instance. robot should only contain a single model instance. |
|
inline |
Returns the output port for bot_core::atlas_command_t.
|
delete |
|
delete |


Given a dataset and a privacy level (epsilon), which algorithm introduce the least error?
We show below (on the right) the Privacy Accuracy Frontier which is a representation of the best achievable error across different privacy levels (i.e., epsilon values). It plots the error over degree distribution, or subgraph counting, of various algorithms on the chosen input dataset (y-axis) versus the privacy level (epsilon) on the x-axis.
User first needs to specify which statistics they are interested in investigating (degree distribution of subgraph counting). Then, a privacy accuracy frontier corresponding to that statistic is generated on the right.
Each dot corresponds to the error of a specific algorithm at a specific epsilon. For the task of degree distribution, Click on a dot to visualize the noisy histogram of the algorithm in the middle. Dots corresponding to the same epsilon are placed along the same vertical line, and dots corresponding to the same algorithms all share the same unique color. *The points that make up the lower convex hull are those that achieve the least error at that privacy level, and are called the frontier. The points on the frontier alone can be visualized by toggling the visualize frontier checkbox on the far right. Click the "Show/Hide Algorithms" button to view the list of algorithms. Algorithms can be included or excluded from the plot using the associated check-boxes.*
For degree distribution, two histograms are shown. The true degree distribution histogram is shown on the left. The noisy degree distribution histogram is shown in the middle. * Both histograms contain the same number of bins for easier comparison. Clicking on a bin of a histogram displays the number of counts in that bin. *For subgraph counting, the subgraph is plotted on the left. In the middle, the true count and the noisy count are shown next to each other.
Please specify input settings.
Visualization of Original Dataset:


| Top |
Properties
| double | ENnu | Read / Write |
| gboolean | ENnu-fit | Read / Write |
| double | H0 | Read / Write |
| gboolean | H0-fit | Read / Write |
| double | Omegab | Read / Write |
| gboolean | Omegab-fit | Read / Write |
| double | Omegac | Read / Write |
| gboolean | Omegac-fit | Read / Write |
| double | Omegax | Read / Write |
| gboolean | Omegax-fit | Read / Write |
| double | Tgamma0 | Read / Write |
| gboolean | Tgamma0-fit | Read / Write |
| double | Yp | Read / Write |
| gboolean | Yp-fit | Read / Write |
Property Details
The “ENnu”
property
“ENnu” double
N_\nu.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: 3.046
The “ENnu-fit”
property
“ENnu-fit” gboolean
N_\nu:fit.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: FALSE
The “H0-fit”
property
“H0-fit” gboolean
H_0:fit.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: FALSE
The “Omegab”
property
“Omegab” double
\Omega_{b0}.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: 0.0432
The “Omegab-fit”
property
“Omegab-fit” gboolean
\Omega_{b0}:fit.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: FALSE
The “Omegac”
property
“Omegac” double
\Omega_{c0}.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: 0.2568
The “Omegac-fit”
property
“Omegac-fit” gboolean
\Omega_{c0}:fit.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: TRUE
The “Omegax”
property
“Omegax” double
\Omega_{x0}.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: 0.7
The “Omegax-fit”
property
“Omegax-fit” gboolean
\Omega_{x0}:fit.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: TRUE
The “Tgamma0”
property
“Tgamma0” double
T_{\gamma0}.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: 2.7245
The “Tgamma0-fit”
property
“Tgamma0-fit” gboolean
T_{\gamma0}:fit.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: FALSE
The “Yp-fit”
property
“Yp-fit” gboolean
Y_p:fit.
Owner: NcHICosmoLCDM
Flags: Read / Write
Default value: FALSE


Place your ice cream order
Name:
What flavor would you like?
Chocolate
Vanilla
Chocolate Chip
Strawberry
Cookies and Cream
Cookie Dough
Black Walnut
Butter Pecan
Submit


{% if settings == 1 %}
Settings Saved!
{% endif %}
Tag Engine
BigQuery Export Settings
Set your preferences to export your Data Catalog tags into BigQuery. As Tag Engine receives new tags, a copy of those tags are written to BigQuery.
Mandatory settings are marked by
*
*
BigQuery Project Id:
*
BigQuery Region:
*
BigQuery Dataset:
Homepage


SaveMore
Login
Sign Up
Email Address
Looks good!
Use a valid email!
Password
Looks good!
Password cannot be empty
Confirm Password
Looks good!
Password cannot be empty
Sign Up


About Us
Make Good Ice Cream. Repeat.
Scoop Therapy is the ice cream and dessert engine of Group Therapy Coffee. Like the food and drink we serve, our job is make the most enjoyable ice cream possible.
SMALL BATCH, FROM SCRATCH
By working in small batches, we are able to experiment with different flavours, proportions and textures to make spoonful balanced, satisfying & delicious. We toast our own pecans, make our own apple pie, and scrape down each vanilla pod to ensure everything is made in-house. We take the best ingredients, add our wholesome touch to it then pack as much of it into each tub.
PROPER ICE CREAM
Each of our flavours go through hours of development, tasting & re-tasting before making it into the display. Preservatives, artificial colouring & flavours have no place in our kitchen, it represents our commitment to what we do and the honesty toward who we do it for.
We hope you enjoy the result as much as we enjoy making it.


FormatOptions
Namespace: Internal.Utilities.StructuredFormat
A record of options to control structural formatting. For F# Interactive properties matching those of this value can be accessed via the 'fsi' value.
Floating Point format given in the same format accepted by System.Double.ToString, e.g. f6 or g15.
If ShowProperties is set the printing process will evaluate properties of the values being displayed. This may cause additional computation.
The ShowIEnumerable is set the printing process will force the evaluation of IEnumerable objects to a small, finite depth, as determined by the printing parameters. This may lead to additional computation being performed during printing.
open FSharp.Compiler.Interactive.Settings;; setPrintWidth 120;;
Record Fields
| Record Field | Description |
AttributeProcessor
Signature: string -> (string * string) list -> bool -> unit
|
|
BindingFlags
Signature: BindingFlags
|
|
FloatingPointFormat
Signature: string
|
|
FormatProvider
Signature: IFormatProvider
|
|
PrintDepth
Signature: int
|
|
PrintIntercepts
Signature: (IEnvironment -> obj -> Layout option) list
|
|
PrintLength
Signature: int
|
|
PrintSize
Signature: int
|
|
PrintWidth
Signature: int
|
|
ShowIEnumerable
Signature: bool
|
|
ShowProperties
Signature: bool
|
|
StringLimit
Signature: int
|
Static members
| Static member | Description |
Default
Signature: FormatOptions
|
CompiledName: |


bootStrap4
Breakpoints
padding different sizes and sides
BUTTON
our new button
Button
Margins
Family
Time
Is
The
Best


class FileBinaryMimeTypeGuesser implements MimeTypeGuesserInterface
Guesses the mime type with the binary "file" (only available on *nix).
public
|
|
__construct(string $cmd = 'file -b --mime %s 2>/dev/null')
|
The $cmd pattern must contain a "%s" string that will be replaced with the file name to guess. | |
public static
|
bool |
isSupported()
|
Returns whether this guesser is supported on the current OS. | |
public
|
string |
guess(string $path)
|
Guesses the mime type of the file with the given path. |
__construct()
public __construct(string $cmd = 'file -b --mime %s 2>/dev/null')
The $cmd pattern must contain a "%s" string that will be replaced with the file name to guess.
The command output must start with the mime type of the file.
string |
$cmd |
The command to run to get the mime type of a file |
isSupported()
public static bool isSupported()
Returns whether this guesser is supported on the current OS.
bool |
guess()
public string guess(string $path)
Guesses the mime type of the file with the given path.
string |
$path |
The path to the file |
string |
The mime type or NULL, if none could be guessed |
| FileNotFoundException | If the file does not exist |
| AccessDeniedException | If the file could not be read |
<?php
/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier<EMAIL_ADDRESS>*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Symfony\Component\HttpFoundation\File\MimeType;
use Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException;
use Symfony\Component\HttpFoundation\File\Exception\AccessDeniedException;
/**
* Guesses the mime type with the binary "file" (only available on *nix).
*
* @author Bernhard Schussek<EMAIL_ADDRESS>*/
class FileBinaryMimeTypeGuesser implements MimeTypeGuesserInterface
{
private $cmd;
/**
* The $cmd pattern must contain a "%s" string that will be replaced
* with the file name to guess.
*
* The command output must start with the mime type of the file.
*
* @param string $cmd The command to run to get the mime type of a file
*/
public function __construct(string $cmd = 'file -b --mime %s 2>/dev/null')
{
$this->cmd = $cmd;
}
/**
* Returns whether this guesser is supported on the current OS.
*
* @return bool
*/
public static function isSupported()
{
static $supported = null;
if (null !== $supported) {
return $supported;
}
if ('\\' === DIRECTORY_SEPARATOR || !function_exists('passthru') || !function_exists('escapeshellarg')) {
return $supported = false;
}
ob_start();
passthru('command -v file', $exitStatus);
$binPath = trim(ob_get_clean());
return $supported = 0 === $exitStatus && '' !== $binPath;
}
/**
* {@inheritdoc}
*/
public function guess($path)
{
if (!is_file($path)) {
throw new FileNotFoundException($path);
}
if (!is_readable($path)) {
throw new AccessDeniedException($path);
}
if (!self::isSupported()) {
return;
}
ob_start();
// need to use --mime instead of -i. see #6641
passthru(sprintf($this->cmd, escapeshellarg($path)), $return);
if ($return > 0) {
ob_end_clean();
return;
}
$type = trim(ob_get_clean());
if (!preg_match('#^([a-z0-9\-]+/[a-z0-9\-\.]+)#i', $type, $match)) {
// it's not a type, but an error message
return;
}
return $match[1];
}
}


atep-by-step instructions to get vsw-repo running in AWS requires AWS account and ECR and EC2
create docker image e.g. in this case vsw-repo
docker build -t vsw-repo .
docker image has to be named this way
docker tag vsw-repo:latest<PHONE_NUMBER>35.dkr.ecr.us-west-2.amazonaws.com/vsw-repo:latest
in linux this should work. In win WSL, it did not but this can be used later to generate password in EC2. user has to log to right AWS region in order this (push image to ECR) to work.
docker login -u AWS<PHONE_NUMBER>35.dkr.ecr.us-east-2.amazonaws.com
in WIN, used this command
(Get-ECRLoginCommand).Password | docker login --username AWS --password-stdin https://971700601135.dkr.ecr.us-east-2.amazonaws.com
How to push docker image to AWS private registry after docker login is ok and a suitable registry is created. Can be done from console or in visual studio code AWS extension if not done already
https://aws-region.console.aws.amazon.com/ecr/repositories
where aws-region is e.g. us-west-2
docker push<PHONE_NUMBER>35.dkr.ecr.us-west-2.amazonaws.com/server2:latest
access the EC2 instance
from the EC2 to pull right docker image
docker login -u AWS<PHONE_NUMBER>35.dkr.ecr.us-east-2.amazonaws.com
user is propted a password, copy/paste that from command
aws ecr get-login-password --region us-east-2
docker pull<PHONE_NUMBER>35.dkr.ecr.us-east-2.amazonaws.com/vsw-repo-dev
use e.g. following command
docker run -d --name vsw-repo-dev -p 8060:8060 -p 8061:8061 -p 8062:8062<PHONE_NUMBER>35.dkr.ecr.us-east-2.amazonaws.com/vsw-repo-dev
or
docker run -d --name repo-dev-3 -e "EXTERNAL_HOST=ec2-3-138-121-46.us-east-2.compute.amazonaws.com" -p 8060:8060 -p 8061:8061 -p 8062:8062<PHONE_NUMBER>35.dkr.ecr.us-east-2.amazonaws.com/vsw-repo-dev:0.1
when vsw-repo is running in the AWS cloud EC2 URL is something like this:
http://ec2-3-138-121-46.us-east-2.compute.amazonaws.com:8060
this has to be given to aca-py when starting the agent as parameter
http://971700601135.dkr.ecr.us-east-2.amazonaws.com/vsw-repo-dev
AWS console e.g. https://us-east-2.console.aws.amazon.com/console/home?region=us-east-2
if you want to push docker image to ECR, you have to have logged in to right region. region can be checked by
aws configure
to get the password
aws ecr get-login-password --region us-east-2


Reflow Tables lay the table data horizontally until it reaches a minimum size, then all rows are grouped together in a vertical stack with the corresponding labels.
In this example we have used the well-known Northwind sample database. Below is a selection from the "Customers" table.
Try to resize the width of your browser window, to see the effect.
| ID | Name | ContactName | Address | City | PostalCode | Country |
|---|---|---|---|---|---|---|
| 1 | Jorge Maria | Lizbet Maria | Obere Str. 57 | Berlin | 45585 | Germany |
| 2 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
| 3 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
| 4 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |