Xi'An, China
CIPAC Meeting 2027

MT 59 - Sieve analysis


Content Handbook F

 

Outline of method

Sieve analysis consists of the quantitative separation of a powder into fractions with different ranges of particle size by use of an appropriate sieve or sieves. Sieving is carried out either (i) dry, by a process of shaking, tapping and brushing; or (ii) wet, by washing the material on the sieve with a stream of water. Treatment of the sample with a wetting agent is used, where necessary, to assist the sieving process. The specification or the method of analysis for the material under test gives directions as to whether dry or wet sieving is to be applied. Where more than one nominal aperture size is specified, the sample is first sieved on the smallest aperture sieve. This removes most of the very fine particles which tend to clog the sieves and may interfere with quantitative separation of the larger particles. The sieves are stacked in order of aperture size with the largest at the top; the retained material is transferred to the largest aperture sieve, and sieving continued until passage of undersize material through each sieve is substantially complete. The residue on each sieve is finally transferred to a dish, dried if wet sieving has been used, and weighed.

59.4 Sieve test for granular materials

The sample is sieved to obtain the amount of dust contained and the dust is then sieved for 5 minutes to determine the size distribution.

 

Scope

59.4 Sieve test for granular materials

This method is suitable for granular products, i.e. those materials of particle size between 250 ìm and 4 mm, and determines first the dust content and then the size distribution of the granular material (Note 5). The sieving is not rigorous but
determines the size distribution with sufficient precision for the purposes of application.

 


Failed to start the session because headers have already been sent by "D:\www\www83\plugins\system\debug\src\Extension\Debug.php" at line 377. (500 Whoops, looks like something went wrong.)

RuntimeException RuntimeException

HTTP 500 Whoops, looks like something went wrong.

Failed to start the session because headers have already been sent by "D:\www\www83\plugins\system\debug\src\Extension\Debug.php" at line 377.

Exceptions 2

RuntimeException

  1. if ($this->isActive()) {
  2. throw new \RuntimeException('Failed to start the session: already started by PHP.');
  3. }
  4. if (ini_get('session.use_cookies') && headers_sent($file, $line)) {
  5. throw new \RuntimeException(
  6. sprintf('Failed to start the session because headers have already been sent by "%s" at line %d.', $file, $line)
  7. );
  8. }
  9. if (!session_start()) {
  1. $this->setId($session_clean);
  2. $cookie->set($session_name, '', ['expires' => time() - 3600 ]);
  3. }
  4. }
  5. parent::start();
  6. // Try loading data from the session
  7. if (!empty($_SESSION['joomla'])) {
  8. $this->data = unserialize(base64_decode($_SESSION['joomla']));
  9. }
  1. {
  2. if ($this->isStarted()) {
  3. return;
  4. }
  5. $this->store->start();
  6. $this->setState(SessionState::ACTIVE);
  7. // Initialise the session
  8. $this->setCounter();
  1. * @since 1.0
  2. */
  3. public function has($name)
  4. {
  5. if (!$this->isActive()) {
  6. $this->start();
  7. }
  8. return $this->store->has($name);
  9. }
  1. $name = $args[2] . '.' . $name;
  2. }
  3. }
  4. if (parent::has($name)) {
  5. // Parent is used because of b/c, can be changed in Joomla 6
  6. return parent::get($name, $default);
  7. }
  8. /*
Session->get() in D:\www\www83\libraries\src\Factory.php (line 372)
  1. __CLASS__
  2. ),
  3. E_USER_DEPRECATED
  4. );
  5. $instance = self::getApplication()->getSession()->get('user');
  6. if (\is_null($id)) {
  7. if (!($instance instanceof User)) {
  8. $instance = User::getInstance();
  9. }
  1. {
  2. $renderer = $this->_doc->loadRenderer('module');
  3. $buffer = '';
  4. $app = Factory::getApplication();
  5. $user = Factory::getUser();
  6. $frontediting = ($app->isClient('site') && $app->get('frontediting', 1) && !$user->guest);
  7. $menusEditing = ($app->get('frontediting', 1) == 2) && $user->authorise('core.edit', 'com_menus');
  8. foreach (ModuleHelper::getModules($position) as $mod) {
  9. $moduleHtml = $renderer->render($mod, $params, $content);
ModulesRenderer->render() in D:\www\www83\libraries\src\Document\HtmlDocument.php (line 578)
  1. $cbuffer[$hash] = $tmpdata;
  2. $cache->store($cbuffer, 'cbuffer_' . $type);
  3. } else {
  4. $this->setBuffer($renderer->render($name, $attribs, null), $type, $name, $title);
  5. }
  6. return parent::$_buffer[$type][$name][$title];
  7. }
HtmlDocument->getBuffer() in D:\www\www83\libraries\src\Document\HtmlDocument.php (line 897)
  1. $replace = [];
  2. $with = [];
  3. foreach ($this->_template_tags as $jdoc => $args) {
  4. $replace[] = $jdoc;
  5. $with[] = $this->getBuffer($args['type'], $args['name'], $args['attribs']);
  6. }
  7. return str_replace($replace, $with, $this->_template);
  8. }
  9. }
HtmlDocument->_renderTemplate() in D:\www\www83\libraries\src\Document\HtmlDocument.php (line 650)
  1. if (\array_key_exists('csp_nonce', $params) && $params['csp_nonce'] !== null) {
  2. $this->cspNonce = $params['csp_nonce'];
  3. }
  4. $data = $this->_renderTemplate();
  5. parent::render($caching, $params);
  6. return $data;
  7. }
HtmlDocument->render() in D:\www\www83\libraries\src\Document\ErrorDocument.php (line 139)
  1. $this->debug = $params['debug'] ?? false;
  2. $this->error = $this->_error;
  3. $params['file'] = 'error.php';
  4. return parent::render($cache, $params);
  5. }
  6. /**
  7. * Render the backtrace
  8. *
  1. ob_end_clean();
  2. }
  3. $this->getDocument()->setTitle(Text::_('Error') . ': ' . $error->getCode());
  4. return $this->getDocument()->render(
  5. false,
  6. [
  7. 'template' => $template->template,
  8. 'directory' => JPATH_THEMES,
  9. 'debug' => JDEBUG,
  1. 'subject' => $app,
  2. 'document' => $renderer->getDocument(),
  3. ])
  4. );
  5. $data = $renderer->render($error);
  6. // If nothing was rendered, just use the message from the Exception
  7. if (empty($data)) {
  8. $data = $error->getMessage();
  9. }
ExceptionHandler::render() in D:\www\www83\libraries\src\Exception\ExceptionHandler.php (line 76)
  1. * @since 3.10.0
  2. */
  3. public static function handleException(\Throwable $error)
  4. {
  5. static::logException($error);
  6. static::render($error);
  7. }
  8. /**
  9. * Render the error page based on an exception.
  10. *
ExceptionHandler::handleException() in D:\www\www83\libraries\src\Application\CMSApplication.php (line 334)
  1. );
  2. // Trigger the onError event.
  3. $this->dispatchEvent('onError', $event);
  4. ExceptionHandler::handleException($event->getError());
  5. }
  6. // Trigger the onBeforeRespond event.
  7. $this->dispatchEvent(
  8. 'onBeforeRespond',
CMSApplication->execute() in D:\www\www83\index.php (line 35)
  1. // Run the application - All executable code should be triggered through this file
  2. require_once dirname(__FILE__) . '/includes/app.php';
  3. $app = JFactory::getApplication('site');
  4. $app->execute();

RuntimeException

Failed to start the session because headers have already been sent by "D:\www\www83\plugins\system\debug\src\Extension\Debug.php" at line 377.

  1. if ($this->isActive()) {
  2. throw new \RuntimeException('Failed to start the session: already started by PHP.');
  3. }
  4. if (ini_get('session.use_cookies') && headers_sent($file, $line)) {
  5. throw new \RuntimeException(
  6. sprintf('Failed to start the session because headers have already been sent by "%s" at line %d.', $file, $line)
  7. );
  8. }
  9. if (!session_start()) {
  1. $this->setId($session_clean);
  2. $cookie->set($session_name, '', ['expires' => time() - 3600 ]);
  3. }
  4. }
  5. parent::start();
  6. // Try loading data from the session
  7. if (!empty($_SESSION['joomla'])) {
  8. $this->data = unserialize(base64_decode($_SESSION['joomla']));
  9. }
  1. {
  2. if ($this->isStarted()) {
  3. return;
  4. }
  5. $this->store->start();
  6. $this->setState(SessionState::ACTIVE);
  7. // Initialise the session
  8. $this->setCounter();
  1. * @since 1.0
  2. */
  3. public function has($name)
  4. {
  5. if (!$this->isActive()) {
  6. $this->start();
  7. }
  8. return $this->store->has($name);
  9. }
  1. $name = $args[2] . '.' . $name;
  2. }
  3. }
  4. if (parent::has($name)) {
  5. // Parent is used because of b/c, can be changed in Joomla 6
  6. return parent::get($name, $default);
  7. }
  8. /*
Session->get() in D:\www\www83\libraries\src\Factory.php (line 372)
  1. __CLASS__
  2. ),
  3. E_USER_DEPRECATED
  4. );
  5. $instance = self::getApplication()->getSession()->get('user');
  6. if (\is_null($id)) {
  7. if (!($instance instanceof User)) {
  8. $instance = User::getInstance();
  9. }
  1. *
  2. * @since 3.2
  3. */
  4. protected function initialiseApp($options = [])
  5. {
  6. $user = Factory::getUser();
  7. // If the user is a guest we populate it with the guest user group.
  8. if ($user->guest) {
  9. $guestUsergroup = ComponentHelper::getParams('com_users')->get('guest_usergroup', 1);
  10. $user->groups = [$guestUsergroup];
SiteApplication->initialiseApp() in D:\www\www83\libraries\src\Application\SiteApplication.php (line 237)
  1. * @since 3.2
  2. */
  3. protected function doExecute()
  4. {
  5. // Initialise the application
  6. $this->initialiseApp();
  7. // Mark afterInitialise in the profiler.
  8. JDEBUG ? $this->profiler->mark('afterInitialise') : null;
  9. // Route the application
SiteApplication->doExecute() in D:\www\www83\libraries\src\Application\CMSApplication.php (line 304)
  1. $this->sanityCheckSystemVariables();
  2. $this->setupLogging();
  3. $this->createExtensionNamespaceMap();
  4. // Perform application routines.
  5. $this->doExecute();
  6. // If we have an application document object, render it.
  7. if ($this->document instanceof \Joomla\CMS\Document\Document) {
  8. // Render the application output.
  9. $this->render();
CMSApplication->execute() in D:\www\www83\index.php (line 35)
  1. // Run the application - All executable code should be triggered through this file
  2. require_once dirname(__FILE__) . '/includes/app.php';
  3. $app = JFactory::getApplication('site');
  4. $app->execute();

Stack Traces 2

[2/2] RuntimeException
RuntimeException:
Failed to start the session because headers have already been sent by "D:\www\www83\plugins\system\debug\src\Extension\Debug.php" at line 377.

  at D:\www\www83\libraries\vendor\joomla\session\src\Storage\NativeStorage.php:454
  at Joomla\Session\Storage\NativeStorage->start()
     (D:\www\www83\libraries\src\Session\Storage\JoomlaStorage.php:313)
  at Joomla\CMS\Session\Storage\JoomlaStorage->start()
     (D:\www\www83\libraries\vendor\joomla\session\src\Session.php:396)
  at Joomla\Session\Session->start()
     (D:\www\www83\libraries\vendor\joomla\session\src\Session.php:327)
  at Joomla\Session\Session->has()
     (D:\www\www83\libraries\src\Session\Session.php:194)
  at Joomla\CMS\Session\Session->get()
     (D:\www\www83\libraries\src\Factory.php:372)
  at Joomla\CMS\Factory::getUser()
     (D:\www\www83\libraries\src\Document\Renderer\Html\ModulesRenderer.php:46)
  at Joomla\CMS\Document\Renderer\Html\ModulesRenderer->render()
     (D:\www\www83\libraries\src\Document\HtmlDocument.php:578)
  at Joomla\CMS\Document\HtmlDocument->getBuffer()
     (D:\www\www83\libraries\src\Document\HtmlDocument.php:897)
  at Joomla\CMS\Document\HtmlDocument->_renderTemplate()
     (D:\www\www83\libraries\src\Document\HtmlDocument.php:650)
  at Joomla\CMS\Document\HtmlDocument->render()
     (D:\www\www83\libraries\src\Document\ErrorDocument.php:139)
  at Joomla\CMS\Document\ErrorDocument->render()
     (D:\www\www83\libraries\src\Error\Renderer\HtmlRenderer.php:70)
  at Joomla\CMS\Error\Renderer\HtmlRenderer->render()
     (D:\www\www83\libraries\src\Exception\ExceptionHandler.php:142)
  at Joomla\CMS\Exception\ExceptionHandler::render()
     (D:\www\www83\libraries\src\Exception\ExceptionHandler.php:76)
  at Joomla\CMS\Exception\ExceptionHandler::handleException()
     (D:\www\www83\libraries\src\Application\CMSApplication.php:334)
  at Joomla\CMS\Application\CMSApplication->execute()
     (D:\www\www83\index.php:35)                
[1/2] RuntimeException
RuntimeException:
Failed to start the session because headers have already been sent by "D:\www\www83\plugins\system\debug\src\Extension\Debug.php" at line 377.

  at D:\www\www83\libraries\vendor\joomla\session\src\Storage\NativeStorage.php:454
  at Joomla\Session\Storage\NativeStorage->start()
     (D:\www\www83\libraries\src\Session\Storage\JoomlaStorage.php:313)
  at Joomla\CMS\Session\Storage\JoomlaStorage->start()
     (D:\www\www83\libraries\vendor\joomla\session\src\Session.php:396)
  at Joomla\Session\Session->start()
     (D:\www\www83\libraries\vendor\joomla\session\src\Session.php:327)
  at Joomla\Session\Session->has()
     (D:\www\www83\libraries\src\Session\Session.php:194)
  at Joomla\CMS\Session\Session->get()
     (D:\www\www83\libraries\src\Factory.php:372)
  at Joomla\CMS\Factory::getUser()
     (D:\www\www83\libraries\src\Application\SiteApplication.php:565)
  at Joomla\CMS\Application\SiteApplication->initialiseApp()
     (D:\www\www83\libraries\src\Application\SiteApplication.php:237)
  at Joomla\CMS\Application\SiteApplication->doExecute()
     (D:\www\www83\libraries\src\Application\CMSApplication.php:304)
  at Joomla\CMS\Application\CMSApplication->execute()
     (D:\www\www83\index.php:35)