Xi'An, China
CIPAC Meeting 2027

MT 3 - Specific gravity, density and weight per mililitre


Content Handbook F

 

Outline of method

The sample is brought to the prescribed temperature and transferred to a hydrometer cylinder at approximately the same temperature. The appropriate hydrometer is lowered into the sample and allowed to settle. The hydrometer is read and the temperature of the sample noted. If required, the cylinder and its contents are placed in a constant temperature bath to avoid excessive temperature variation during the test.

3.2 Pyknometer method

In this method the weights of equal volumes or the material and water are compared.

3.3 Density of suspension concentrates

3.3.1 Hydrometer method

Direct determination of density by hydrometer, density bottle or liquid displacement method has been shown to be unsuccessful because of aeration and viscosity effects. The density at 20 °C of a 1 : 1 aqueous dilution can be readily determined using a hydrometer and hence the actual density of the suspension concentrate can be calculated.

3.3.2 Density bottle method

A portion of the sample is weighed into a density bottle and diluted with water containing an anti-foam agent, using vacuum, if necessary to remove occluded air. The volume of sample taken is then found by making up to capacity with the anti-foam solution and weighing.

 

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)